有两个开关if
检查文件的条件:-e
和-f
。
这两个有什么区别?
答案
看:http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html
我相信这些不是"if 开关",而是"测试开关"(因为你必须在 [] 括号内使用它们。
但是区别是:
[ -e FILE ]
如果存在文件,则为true。
这将返回true 对彼此而言/etc/hosts
和/dev/null
以及目录。
[ -f FILE ]
如果存在文件并且是常规文件,则为正确。这将返回true 为了/etc/hosts
和false 为了/dev/null
(因为它不是常规文件),并且false 为了/dev
因为它是目录。