小编Cla*_*diu的帖子

为什么是“while kill -0 $PID”而不是“直到kill -0 $PID”?

我可能在这里很愚蠢,但是如果我想在进程运行时做某事,为什么要这样做:

while kill -0 $PID
do
    #...
done
Run Code Online (Sandbox Code Playgroud)

代替

until kill -0 $PID
do
    #...
done
Run Code Online (Sandbox Code Playgroud)

?

kill -01如果未找到该进程,则以代码退出,并且0如果找到该进程:

$ kill -0 123444
-bash: kill: (123444) - No such process
$ echo $?
1
$ screen -ls | grep rofl
    28043.rofl  (02/19/2015 02:27:56 PM)    (Detached)
$ kill -0 28043
$ echo $?
0
Run Code Online (Sandbox Code Playgroud)

因此,如果进程正在运行,while 循环不会归结为:

while 0
do
    #...
done
Run Code Online (Sandbox Code Playgroud)

哪个永远不会执行?

linux scripting bash shell-script exit

6
推荐指数
3
解决办法
2518
查看次数

是否有一个命令可以创建一个包含传递给它的参数的临时文件?

我可以使用cat反引号将文件内容粘贴到命令中:

ls `cat filenames`
Run Code Online (Sandbox Code Playgroud)

有没有办法做相反的事情 - 将字符串转换为(临时)文件名?

gcc -o cpuburn `uncat "main(){while(1);}"`.c
Run Code Online (Sandbox Code Playgroud)

command-line shell tmp files

2
推荐指数
1
解决办法
362
查看次数

标签 统计

bash ×1

command-line ×1

exit ×1

files ×1

linux ×1

scripting ×1

shell ×1

shell-script ×1

tmp ×1