1、文件表达式 2、整数变量表达式 参数 说明 -eq 等于 -ne 不等于 -gt 大于 -ge 大于等于 -lt 小于 -le 小于等于 3、字符串变量表达式 参数 说明 $a = $b 如果string1 等于string2,则为真 $string1 != $string2 如果 string1 不等于 string2 ,则为真 -n $string 如果string 非空(非0),返回0 ...
-x filename 如果 filename可执行,则为真 -s filename 如果文件长度不为0,则为真 -h filename 如果文件是软链接,则为真 filename1 -nt filename2 如果 filename1比 filename2新,则为真。 filename1 -ot filename2 如果 filename1比 filename2旧,则为真。 整数变量表达式 -eq 等于 -ne 不等于 -...
-ne 检测两个数是否不相等,不相等返回 true。 [ $a -ne $b ] 返回 true。 -gt 检测左边的数是否大于右边的,如果是,则返回 true。 [ $a -gt $b ] 返回 false。 -lt 检测左边的数是否小于右边的,如果是,则返回 true。 [ $a -lt $b ] 返回 true。 -ge 检测左边的数是否大于等于右边的,如果是...
linux shell echo 不输出 shell echo -ne 程序可以说就是结构化加上算法,现在就来讲讲shell脚本的结构化命令 结构化命令允许你改变shell脚本的正常执行流。最基本的结构化命令是if-then语句。也可以扩展if-then语句,加入if-then-else语句。如果希望在测试失败时加上额外的测试,if-then-elif语句。 if command then...
linux 下shell中if的“-e,-d,-f”是什么意思 文件表达式 -e filename 如果 filename存在,则为真 -d filename 如果 filename为目录,则为真 -f filename 如果 filename为常规文件,则为真 -L filename 如果 filename为符号链接,则为真 -r filename 如果 filename可读,则为真 -w filename 如果 filename...
bash仅支持一维数组 A=(B C D E F) 或A[0]=B A[1]=E A[3]=F 可以不使用连续下标 读取 A[i] {A[@]} 表示获取所有元素 shell 传递参数 $0 脚本名 1− 9 输入脚本的参数,第一个、第二个以此类推 $@ 所有的参数 $# 参数数量 $?返回上一条指令的代码 当前脚本的进程标识号(PID) $_最后...
#!/bin/sh echo -e "OK! \c" # -e 开启转义 \c 不换行 echo "It is a test" 输出结果: 代码语言:txt AI代码解释 OK! It is a test ==显示结果定向至文件== 代码语言:text AI代码解释 echo "It is a test" > myfile ==原样输出字符串,不进行转义或取变量(用单引号)== 代码语言:text AI...
-eq 等于 -ne 不等于 -gt 大于 -ge 大于等于 -lt 小于 -le 小于等于 字符串变量表达式 If [ $a = $b ] 如果string1等于string2,则为真 字符串允许使用赋值号做等号 if [ $string1 != $string2 ] 如果string1不等于string2,则为真 if [ -n $string ] 如果string 非空(非0),返回0(true) ...
11 -ne 1 ] && echo "成立" || echo "不成立" 不成立 两边都为真 代码语言:javascript 代码运行次数:0 运行 AI代码解释 [root@clsn ~]# [ 11 -ne 1 -a 1 -eq 1 ] && echo "成立" || echo "不成立" 成立 至少有一边为真 代码语言:javascript 代码运行次数:0 运行 AI代码解释 [root@clsn ...
-e和-a都可以测试文件是否存在,但和 !(取反)连用时,-a可能不准确,建议使用-e。 [root@yuji ~]# [ -e /etc/shadow ] //测试文件是否存在 [root@yuji ~]# echo $? 0 [root@yuji ~]# [ -a /etc/shadow ] //测试文件是否存在 [root@yuji ~]# echo $? 0 [root@yuji ~]# [ ! -a ...