-gt是大于的意思。
-eq是等于的意思。
-ne是不等于的意思。
-ge是大于等于的意思。
-lt是小于的意思。
-le是小于等于的意思。
脚本简单地说就是一条条的文字命令,这些文字命令是可以看到的(如可以用记事本打开查看、编辑),脚本程序在执行时,是由系统的一个解释器,将其一条条的翻译成机器可识别的指令,并按程序顺序执行。因为脚本在执行时多了一道翻译的过程,所以它比二进制程序执行效率要稍低一些。
脚本通常可以由应用程序临时调用并执行。
bash环境作了如下实验:[root@s253
~]#
balabala
-bash:
balabala:
command
not
found
[root@s253
~]#
balabala
&>
/dev/null
[root@s253
~]#
balabala
>/dev/null
2>&1
[root@s253
~]#
balabala
>
/dev/null
2>&1
[root@s253
~]#
两条命令等价。
网友给出ksh和bash对比
/home/lee#echo
$0
-ksh
/home/lee#ls
abc
>/dev/null
2>&1
/home/lee#ls
abc
&>/dev/null
ls:
abc:
没有那个文件或目录
[1]
1524
[1]
Done
(1)
ls
--color=tty
abc
/home/lee#bash
/home/lee#echo
$0
bash
/home/lee#ls
abc
>/dev/null
2>&1
/home/lee#ls
abc
&>/dev/null
显然在ksh就不一样了,所以推荐使用>/dev/null
2>&1
27
后记:
2>&1
和
&>
的解释
Linux的IO输入输出有三类
Standard
Input
代码
0
Standard
Output
代码
1
Standard
Error
代码
2
ls
thereisno
1>
out.txt
标准输出重定向
也可以不加1写成
ls
thereisno
>
out.txt
ls
thereisno
2>
out.txt
标准错误重定向
ls
thereisno
>
out.txt
2>&1
把错误定向到标准输出,然后统一重定向
ls
thereisno
&>
out.txt
所有IO重定向(&>中的&可以代表任意,0,1,2,3……)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)