【求助】关于bash标准输出和标准错误输出

sh/bash/dash/ksh/zsh等Shell脚本
回复
guitarfeng
帖子: 1
注册时间: 2009-08-31 15:32

【求助】关于bash标准输出和标准错误输出

#1

帖子 guitarfeng » 2009-08-31 15:34

$echo "This is y." > y
$ cat x y 1> hold 2>&1 ***********************************************
$ cat hold
cat: x: No such file or directory
This is y.


请问************行与 cat x y 2>&1 1>hold 的区别是什么?

有关副本的执行顺序是什么呢?

cat 发送一条错误消息到标准错误输出,同时将已存在的y文件复制一份到标准输出。
下一步的执行顺序是什么呢?
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: 【求助】关于bash标准输出和标准错误输出

#2

帖子 O_O_BOT » 2009-08-31 17:53

cat x y 1> hold 2>&1
是 1 定义到了hold 然后 2也定义到了1现在定义到的地方
->就是1 2 现在都到hold file了

cat x y 2>&1 1>hold
这是 2定义到1的地方 就是2定义到了标准输出了。
1>hold 1定义到hold
-> 2到标准输出 1到hold

1 2 是一个文件描述符 里面存着 文件表指针

>& 就是dup() 。。。。
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
回复