免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: welcome008
打印 上一主题 下一主题

&的作用 [复制链接]

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
11 [报告]
发表于 2008-09-15 13:04 |只看该作者

回复 #10 welcome008 的帖子

也不知道你哪里不明白,最好具体说来。

论坛徽章:
1
处女座
日期:2014-12-23 17:59:27
12 [报告]
发表于 2008-09-15 13:32 |只看该作者
现在搞不懂,过阵子可能也就无师自通了.

论坛徽章:
0
13 [报告]
发表于 2008-09-15 13:33 |只看该作者
有点像变量符,或者说c的指针。

瞎猜的,不知道对不对

论坛徽章:
0
14 [报告]
发表于 2008-09-15 14:40 |只看该作者
原帖由 blackold 于 2008-9-15 13:04 发表
也不知道你哪里不明白,最好具体说来。


那你就解释一下

>&
&>

两个的作用吧
以及与
>
<
的区别吧

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
15 [报告]
发表于 2008-09-15 14:54 |只看该作者

回复 #14 welcome008 的帖子

在bash下, &> >& 是一样的,优先使用前者。
&> file标准输出和标准错误都重定向到文件file
注:这里的 >& 与2>&1是不同的。

> 相当于1> 标准输出重定向 > file 输出到file
< 相当于 0< 标准输入重定向, < file 从file输入。

论坛徽章:
0
16 [报告]
发表于 2008-09-15 18:33 |只看该作者
原帖由 blackold 于 2008-9-15 14:54 发表
在bash下, &> >& 是一样的,优先使用前者。
&> file标准输出和标准错误都重定向到文件file
注:这里的 >& 与2>&1是不同的。

> 相当于1> 标准输出重定向 > file 输出到file
< 相当于 0< 标准输入重定向, ...


&> file标准输出和标准错误都重定向到文件file

那在使用这个的时候, &>前面还要不要再添加文件描述符号或者文件名?
还是说它直接跟在一个命令的后面就可以了?


注:这里的 >& 与2>&1是不同的。

你是说那后面的那个2>&1中>&和前面的那个>&作用不是一样的? 2>&1是一个固定用法?

对自己越来越没有信心了

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
17 [报告]
发表于 2008-09-15 18:52 |只看该作者

回复 #16 welcome008 的帖子

语法不同:
重定向:command &> file 相当于 command > file >&1
复制fd: fd1>&fd2

可以将>&(&>) 看作 fd1>&fd2 的一种特殊情形。

更正:
  1. 重定向:command &> file 相当于 command > file 2>&1
复制代码

谢谢 Tim 指正。

[ 本帖最后由 blackold 于 2008-9-16 09:40 编辑 ]

论坛徽章:
23
15-16赛季CBA联赛之吉林
日期:2017-12-21 16:39:27白羊座
日期:2014-10-27 11:14:37申猴
日期:2014-10-23 08:36:23金牛座
日期:2014-09-30 08:26:49午马
日期:2014-09-29 09:40:16射手座
日期:2014-11-25 08:56:112015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:0315-16赛季CBA联赛之山东
日期:2017-12-21 16:39:1915-16赛季CBA联赛之广东
日期:2016-01-19 13:33:372015亚冠之山东鲁能
日期:2015-10-13 09:39:062015亚冠之西悉尼流浪者
日期:2015-09-21 08:27:57
18 [报告]
发表于 2008-09-16 09:31 |只看该作者
原帖由 blackold 于 2008-9-15 18:52 发表
语法不同:
重定向:command &> file 相当于 command > file >&1
复制fd: fd1>&fd2

可以将>&(&>) 看作 fd1>&fd2 的一种特殊情形。


应该是这样吧:
重定向:command &> file 相当于 command > file 2>&1
复制fd: fd2>&fd1

&>filename
   # 将stdout和stderr都重定向到文件"filename".

M>N
  # "M"是一个文件描述符, 如果没有明确指定的话默认为1.
  # "N"是一个文件名.
  # 文件描述符"M"被重定向到文件"N".
M>&N
  # "M"是一个文件描述符, 如果没有明确指定的话默认为1.
  # "N"是另一个文件描述符.

&>只是一个特例。

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
19 [报告]
发表于 2008-09-16 09:39 |只看该作者

回复 #18 ly5066113 的帖子

多谢 Tim 指正!

论坛徽章:
0
20 [报告]
发表于 2008-09-19 15:19 |只看该作者
原帖由 ly5066113 于 2008-9-16 09:31 发表


应该是这样吧:
重定向:command &> file 相当于 command > file 2>&1
复制fd: fd2>&fd1

&>filename
   # 将stdout和stderr都重定向到文件"filename".

M>N
  # "M"是一个文件描述符, 如果没有明 ...


搞不定,测试:

s_test/nod:a:[216] ls b c >/dev/null 2>&1
输出重定向有二意性
s_test/nod:a:[218] ls b c &>/dev/null
无效的空命令
s_test/nod:a:[219] ls b c &> /dev/null
无效的空命令
s_test/nod:a:[220]

sorry,这是在csh下测试的。我到bash下看看

[ 本帖最后由 welcome008 于 2008-9-19 15:22 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP