Bash 技巧 —— 让命令在后台运行

执行一个命令使其在后台运行的方式有两种:

1. 在bash 命令后加 &

tar -zcvf dist.tgz dist &

(tar -zcvf dist.tgz dist; cp dist.tgz ../) &   

 

2. 利用 coproc 命令, 此命令会产生一个新的shell进程来执行命令

coproc tar -zcvf dist.tgz dist

coproc proceed_name { tar -zcvf dist.tgz dist; }

 

3. echo $BASH_SUBSHELL, 如果该命令返回0,则表明没有子shell,如果返回1或其他更大的数字,

就表明存在子shell。

 

4. 命令列表,命令分组,进程列表

$ pwd; ls; cd /etc;     一系列以分号分割的命令,为命令列表

$ (pwd; ls; cd /ets)    以圆括号包裹起来的命令列表,则会变成进程列表,执行时会产生一个子shell 运行其中的命令

$ { pwd; ls; cd/etc; }  以花括号包裹起来,前后留有空格,并以分号结尾的单个或多个命令为命令分组,其不会产生子shell

进程列表也是一种命令分组

上一篇:比pigz性能更好的pzstd


下一篇:mongo5数据库中用mongoimport导入数据