linux shell 指令 诸如-d, -f, -e之类的判断表达式
发布网友
发布时间:2022-04-21 13:37
我来回答
共1个回答
热心网友
时间:2022-04-18 21:02
文件比较运算符
-e filename 如果 filename存在,则为真 [ -e /var/log/syslog ]
-d filename 如果 filename为目录,则为真 [ -d /tmp/mydir ]
-f filename 如果 filename为常规文件,则为真 [ -f /usr/bin/grep ]
-L filename 如果 filename为符号链接,则为真 [ -L /usr/bin/grep ]
-r filename 如果 filename可读,则为真 [ -r /var/log/syslog ]
-w filename 如果 filename可写,则为真 [ -w /var/mytmp.txt ]
-x filename 如果 filename可执行,则为真 [ -L /usr/bin/grep ]
filename1-nt filename2 如果 filename1比 filename2新,则为真 [ /tmp/install/etc/services -nt /etc/services ]
filename1-ot filename2 如果 filename1比 filename2旧,则为真 [ /boot/bzImage -ot arch/i386/boot/bzImage ]
字符串比较运算符 (请注意引号的使用,这是防止空格扰乱代码的好方法)
-z string 如果 string长度为零,则为真 [ -z "$myvar" ]
-n string 如果 string长度非零,则为真 [ -n "$myvar" ]
string1= string2 如果 string1与 string2相同,则为真 [ "$myvar" = "one two three" ]
string1!= string2 如果 string1与 string2不同,则为真 [ "$myvar" != "one two three" ]
算术比较运算符
num1-eq num2 等于 [ 3 -eq $mynum ]
num1-ne num2 不等于 [ 3 -ne $mynum ]
num1-lt num2 小于 [ 3 -lt $mynum ]
num1-le num2 小于或等于 [ 3 -le $mynum ]
num1-gt num2 大于 [ 3 -gt $mynum ]
num1-ge num2 大于或等于 [ 3 -ge $mynum ]
学习Linux,《Linux就该这么学》这本书能提供更全面的学习路线。
linux shell 指令 诸如-d, -f, -e之类的判断表达式
在Linux shell中,一系列判断表达式如-e, -d, -f, -L, -r, -w, -x, -nt, -ot, -z, -n, =, !=, -eq, -ne, -lt, -le, -gt, -ge等,为开发者提供了强大的文件和字符串操作能力。-e用于检测文件是否存在,-d检查是否为目录,-f确认是否为普通文件,-L则判断是否为符号链接。
linux shell 指令 诸如-d, -f, -e之类的判断表达式
-e filename 如果 filename存在,则为真 [ -e /var/log/syslog ]-d filename 如果 filename为目录,则为真 [ -d /tmp/mydir ]-f filename 如果 filename为常规文件,则为真 [ -f /usr/bin/grep ]-L filename 如果 filename为符号链接,则为真 [ -L /usr/bin/grep ]...
Linux | shell脚本-比较判断和运算语句
首先,讨论shell中的文件状态判断。我们可以使用`[ -e 文件路径 ]`命令来判断文件是否存在,例如`[ -e /root ]`表示检查`/root`是否存在。其他用于判断文件状态的命令包括:`-d`:判断是否为目录。`-f`:判断是否为文件。`-x`:判断是否有执行权限。`-w`:判断是否有写权限。`-r`:判断是否...
求助:LINUX常用SHELL命令
-F 在目录名后面标记“/”,可执行文件后面标记“*”,符号链接后面标记“@”,管道(或FIFO)后面标记“|”,socket文件后面标记“=”。-l 以长格式来显示文件的详细信息-L 若指定的名称为一个符号链接,则显示链接所指向的文件-t 显示时按修改时间而不是名字排序-u 显示时按文件上次存取的时间而不是名字排序4、...
shell判断目录是否存在
判断表达式中直接用-d判断即可,参考代码如下:myFolder=/home/test if[-d$myFolder];then echo"Folderexists!"else echo"Folderdoesn'texist!"fi Shell基本上是一个命令解释器,类似于DOS下的command。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的shell有标准的Bourne shell (sh)和...
linux shell 正则表达式 引用文件
D e [ V v ] i c e " . 单词D e v i c e或d e v i c e [ 0 - 9 ] " { 2 " } - [ 0 - 9 ] " { 2 " } - [ 0 - 9 ] " { 4 " } 对日期格式d d - m m - y y y y [ 0 - 9 ] " { 3 " } " . [ 0 - 9 ] " { 3 " } " ....
Linux下简单的判断目录中是否有新文件的Shell?
shell判断语句 流程控制"if"表达式如果条件为真则执行then后面的部分:if...;then ...elif...;then ...else ...fi 大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等?通常用""来表示条件测试。注意这里的空格很重要。要确保方括号的空格。:判断...
Linux三剑客
awk,这位强大的计算和统计工具,其语法类似shell,但功能更为丰富。它可以过滤、统计和计算数据,如根据指定分隔符(-F)提取字段、使用$数字操作列、利用NR(记录号)和NF(列数)等进行条件判断。例如,awk -F',' '{sum += $2} END {print "平均值: " sum/NR}' file.csv,用于计算CSV文件...
linux文件遍历与查找
首先,使用shell脚本遍历目录。在directory01目录下,通过运行`ls -l`命令,结合正则表达式`^d`或`^-`,可以过滤出文件夹和文件名。例如,`ls -l | grep '^-|d$'`将会显示所有文件和子目录。判断文件或文件夹的存在性,可以借助`test`命令。语法是`test [ -f FILE ]`检查文件,`[ -d ...
linux-shell正则表达式取非
t=`date +%F`for i in `find . -name "*.TXT"|grep -v $t`do rm -f $i done