shell脚本中的“2< " ">&2" "&>”
2016-08-20 14:04
288 查看
文章原地址 :http://www.linuxidc.com/Linux/2014-07/104707.htm
Linux标准文件描述符:
标准输入和标准输出指的就是键盘和显示器。
当文件描述符(0,1,2)与重定向符号(<)组合之后,就可以重新定向输入,输出,及错误。
command 2>file1
命令执行的错误信息保存到了file1文件中。显示屏只是显示正确的信息。
command 1>file1 2>file2
命令执行后,没有显示。因为正确输出到file1,错误定向到file2
command &>file1
命令执行后,输出和错误都定向到file1中
在shell脚本中,可以定义“错误”输出到STDERR指定的文件.需要在重定向符和文件描述符之间加一个and符(&)
cat test
#!/bin/bash
echo " this is ERROR ">&2
echo "this is output"
$
运行脚本
[root@localhost ~]#./test 2>file1
thisis output
[root@localhost ~]# cat file1
thisis ERROR
可以再脚本中使用exec命令:
exec1>file1
exec2>file2
echo " this is ERROR ">&2
echo "this is output"
运行如上脚本,则输出都在file1和file2中。
也可以使用exec 0<file1,从文件1中读取输入。
Linux标准文件描述符:
文件描述符 | 缩写 | 描述 |
0 | STDIN | 标准输入 |
1 | STDOUT | 标准输出 |
2 | STDERR | 标准错误 |
当文件描述符(0,1,2)与重定向符号(<)组合之后,就可以重新定向输入,输出,及错误。
command 2>file1
命令执行的错误信息保存到了file1文件中。显示屏只是显示正确的信息。
command 1>file1 2>file2
命令执行后,没有显示。因为正确输出到file1,错误定向到file2
command &>file1
命令执行后,输出和错误都定向到file1中
在shell脚本中,可以定义“错误”输出到STDERR指定的文件.需要在重定向符和文件描述符之间加一个and符(&)
cat test
#!/bin/bash
echo " this is ERROR ">&2
echo "this is output"
$
运行脚本
[root@localhost ~]#./test 2>file1
thisis output
[root@localhost ~]# cat file1
thisis ERROR
可以再脚本中使用exec命令:
exec1>file1
exec2>file2
echo " this is ERROR ">&2
echo "this is output"
运行如上脚本,则输出都在file1和file2中。
也可以使用exec 0<file1,从文件1中读取输入。
相关文章推荐
- Linux运维学习历程-第十二天-bash脚本与程序包管理
- Linux运维学习历程-第十一天-bash逻辑运算、测试类型和脚本语句
- shell特殊用法
- 微软宣布开源PowerShell:Linux和MacOS版到来
- 【ADB命令行】adb shell screenrecord命令行使用说明
- linux shell 逻辑运算符、逻辑表达式详解
- shell中整数的比较
- 在shell中如何判断一个变量是否为空
- Linux命令行与shell编程笔记 结构化命令
- shell脚本二(图片重命名)
- 慕课网shell实战笔记
- sed命令的用法
- Linux命令行与shell编程笔记 第10章
- Shell标准输出、标准错误 >/dev/null 2>&1
- Shell标准输出、标准错误 >/dev/null 2>&1
- Shell标准输出、标准错误 >/dev/null 2>&1
- Shell标准输出、标准错误 >/dev/null 2>&1
- Shell标准输出、标准错误 >/dev/null 2>&1
- Shell标准输出、标准错误 >/dev/null 2>&1
- js敲诈者变种利用PowerShell免杀分析