在Linux系统上是什么/bin/true
?
答案 0 :(得分:69)
/bin/true
是一个返回0的命令(shell中的真值)。
它的目的是在shell脚本中的位置使用,你通常在编程语言中使用诸如“true”之类的文字,但是shell只会运行命令。
/bin/false
是相反的,返回非零值(shell中的错误值)。
答案 1 :(得分:26)
从手册页:
true - do nothing, successfully
true returns a status 0.
答案 2 :(得分:8)
请注意,这不仅仅是愚蠢或视觉上的好。例如,退出程序而不激活在执行多线程或分叉程序时可能会搞乱的终端处理程序。就像perl:
#!/usr/bin/env perl
exec "/bin/true";
END {
print "This wont get printed .. would have if I just 'exit' or 'die'\n";
}
答案 3 :(得分:1)
我已经看到它曾经愚弄过一个系统操作,以至于当一个命令没有运行时就认为它已经运行了。如果命令有问题,例如循环,则可以使用符号链接将其替换为“true”以使主作业运行。如果更换的工作不是必不可少的,那只是个好主意。
答案 4 :(得分:0)
简单地说它的程序返回0.有时我们需要获取此值以使脚本更具可读性。
答案 5 :(得分:0)
在UNIX shell中,它的用途与其他任何语言中的布尔常量true和false相同。
while true; do
something
done
flag=true
...
if $flag; then
something
done