shell: I/O 重定向,文件描述符

 

I/O 重定向,文件描述符
FD: file descriptor
在 shell 程式中,最常使用的 FD 大概有三個,分別為:
0: Standard Input (STDIN)
1: Standard Output (STDOUT)
2: Standard Error Output (STDERR)

在标准情况下,這些 FD 分別跟如下设备(device)关联:
stdin(0): keyboard
stdout(1): monitor
stderr(2): monitor

0< 原來就是改變 stdin 的數據輸入通道之後
1> 改变stdout的数据输出通道
2> 改变stderr的数据输出通道
兩者都是將原本要送出到 monitor 的数据转向输出到指定文件中。

举例说明

正常输出
# ls my.file 1.sh
ls: cannot access my.file: No such file or directory
1.sh

stdout输出到file.out中,stderr 输出到file.err中
# ls my.file 1.sh 1>file.out 2>file.err

2>&1 就是将 stderr 并入 stdout 作输出
# ls my.file 1.sh 1>j.file 2>&1

1>&2 或 >&2 就是将 stdout 并入 stderr 作输出

只想看到 stderr 呢?將 stdout 弄到 null 就行:
$ ls my.file 1.sh >/dev/null

单纯跑程序,不想看到任何输出结果
$ ls my.file 1.sh >/dev/null 2>&1
$ ls my.file 1.sh &>/dev/null

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值