语法:sh语法速查
差别
这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
语法:sh语法速查 [2024/09/03 10:26] – 创建 user01 | 语法:sh语法速查 [2024/09/03 10:27] (当前版本) – [1. 判断文件类型] user01 | ||
---|---|---|---|
行 1: | 行 1: | ||
====== sh语法速查 ====== | ====== sh语法速查 ====== | ||
+ | |||
+ | ===== - 判断文件类型 ===== | ||
+ | |||
+ | |||
+ | |||
+ | <code bash> | ||
+ | # | ||
+ | |||
+ | myPath="/ | ||
+ | myFile="/ | ||
+ | |||
+ | # 这里的-x 参数判断$myPath是否存在并且是否具有可执行权限 | ||
+ | if [ ! -x " | ||
+ | mkdir " | ||
+ | fi | ||
+ | |||
+ | # 这里的-d 参数判断$myPath是否存在 | ||
+ | if [ ! -d " | ||
+ | mkdir " | ||
+ | fi | ||
+ | |||
+ | # 这里的-f参数判断$myFile是否存在 | ||
+ | if [ ! -f " | ||
+ | touch " | ||
+ | fi | ||
+ | |||
+ | # 其他参数还有-n, | ||
+ | if [ ! -n " | ||
+ | echo " | ||
+ | exit 0 | ||
+ | fi | ||
+ | |||
+ | # 两个变量判断是否相等 | ||
+ | if [ " | ||
+ | echo '$var1 eq $var2' | ||
+ | else | ||
+ | echo '$var1 not eq $var2' | ||
+ | fi | ||
+ | |||
+ | -f 和-e的区别 | ||
+ | Conditional Logic on Files | ||
+ | |||
+ | -a file exists. | ||
+ | -b file exists and is a block special file. | ||
+ | -c file exists and is a character special file. | ||
+ | -d file exists and is a directory. | ||
+ | -e file exists (just the same as -a). | ||
+ | -f file exists and is a regular file. | ||
+ | -g file exists and has its setgid(2) bit set. | ||
+ | -G file exists and has the same group ID as this process. | ||
+ | -k file exists and has its sticky bit set. | ||
+ | -L file exists and is a symbolic link. | ||
+ | -n string length is not zero. | ||
+ | -o Named option is set on. | ||
+ | -O file exists and is owned by the user ID of this process. | ||
+ | -p file exists and is a first in, first out (FIFO) special file or | ||
+ | named pipe. | ||
+ | -r file exists and is readable by the current process. | ||
+ | -s file exists and has a size greater than zero. | ||
+ | -S file exists and is a socket. | ||
+ | -t file descriptor number fildes is open and associated with a | ||
+ | terminal device. | ||
+ | -u file exists and has its setuid(2) bit set. | ||
+ | -w file exists and is writable by the current process. | ||
+ | -x file exists and is executable by the current process. | ||
+ | -z string length is zero. | ||
+ | |||
+ | 是用 -s 还是用 -f 这个区别是很大的! | ||
+ | |||
+ | </ | ||
语法/sh语法速查.1725330361.txt.gz · 最后更改: 2024/09/03 10:26 由 user01