Bash test 命令
Bash 的比较 (test) 是必须掌握的技能。[ true-condition ]
会被解释为 0。方括号 [] 是命令 test
的语法糖。 [[ ... ]]
是升级版的比较,需要注意的是两个方括号里面不会扩展文件名,也不会分词,只会做参数的扩展, $variable 变量的替换,以及能用 &&
, ||
, <
, >
这些操作符。不过在 if
后面,像 test
, []
, [[]]
这些都是可以省略的。不用 if
的时候方括号很适合做一些一行流的操作,例如: [ -f $variable ] && command-a || command-b
能比较变量文件是否存在,是则执行 command-a, 否则执行 command-b。
Nohup 的使用简介
来看一看 nohup
的使用。 nohup command &
是最基本的用例,它起了一个 command 的进程,标准输出和标准错误重定向到 nohup.out
,不响应 SIGHUP 信号。 nohup nice command &
是让 nohup
与另一个 UNIX 应用 nice
混合使用,它是 command 这个进程的优先级变得非常低,占用更少的 CPU 时间。对于使用 ssh 的场景,有可能会因为执行了 nohup
后台任务而拒绝登出,因为 ssh 拒绝丢失后台任务的标准输入的数据。对于这种场景,我们可以加上 < /dev/null
解决。原理是 stdin/stdout/stderr …