谁能告诉我这个脚本会做什么?什么是第3行的-z?
Filename=File.txt
X=`ls /home/$Filename`
if [ -z "$X" ]; then
exit
fi
Run Code Online (Sandbox Code Playgroud)
Filename=File.txt
Run Code Online (Sandbox Code Playgroud)
该$Filename变量现在拥有的价值File.txt.
X=`ls /home/$Filename`
Run Code Online (Sandbox Code Playgroud)
该$X变量现在包含指令的输出ls /home/File.txt.如果文件存在,它将包含一些内容,否则它将是一个空字符串.
if [ -z "$X" ]; then
Run Code Online (Sandbox Code Playgroud)
如果变量的值$X是空字符串(意味着/home/File.txt不存在,否则$X将包含某些内容),则:
exit
fi
Run Code Online (Sandbox Code Playgroud)
这是一种非常尴尬的写作方式:
if ! [ -e "/home/File.txt" ]; then exit; fi
Run Code Online (Sandbox Code Playgroud)
-e如果路径存在,则返回true.您还可以检查文件(-f),目录(-d),符号链接(-L)等.查看man [可以使用的更多选项[.你也会在-z那里找到:
-z string如果长度string为零,则为真.