版权声明:本文为博主原创文章,转载请注明出处。
前言
在shell里执行程序时,在最后加上&可以使程序在后台运行,不占用当前屏幕。
单独执行一条命令时,在最后加上&即可。
但当我们想同时开启多个后台的时候,也许你的想法如此:
1 2 3
| for file in * ; do echo $file &; done
|
如果是这样,恭喜你,想法跟我一样,是错的。
正解
正确做法是,把每条命令都用花括号括起来,再在后面加上&。(注意命令前面要加空格)
1 2 3
| for file in * ; do { echo $file; } & done
|