社区
系统维护与使用区
帖子详情
不明白grep "lous" /etc/passwd>/dev/null 2>&1
dingwood
2010-03-26 04:01:35
如题,不明白上句的意思。
尤其是不明白大多数系统管理员称/ d e v / n u l l为比特池,什么个意思?
...全文
423
9
打赏
收藏
不明白grep "lous" /etc/passwd>/dev/null 2>&1
如题,不明白上句的意思。 尤其是不明白大多数系统管理员称/ d e v / n u l l为比特池,什么个意思?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaoxiaotao1986
2012-07-02
打赏
举报
回复
是不是可以理解成&1默认的就是/dev/null,我是了下,如果没有前面的标准输出重定向的话,后边的错误输出重定向还是为显示到屏幕上的,也就是说&1是个变量,默认的被赋值成/dev/null。我不知道我的理解对不对。
xiaokang007
2010-03-27
打赏
举报
回复
可以 当做 垃圾 回收站 ,而且不需要 你 去 手动 清理
steptodream
2010-03-27
打赏
举报
回复
楼上的 如果你要解释 最好解释准确
2>&1
在shell里 这里的1和2准确的说是文件描述符 其实还有0 即:0 1 2 对应的是:STDIN STDOUT STDERR
也就是0表示输入 1表示屏幕输出 2表示错误输出 所以2>&1就是把标准出错重定向到标准输出
grep "lous" /etc/passwd>/dev/null 2>&1
首先是grep "lous" /etc/passwd>/dev/null 将标准输出重定向到/dev/null 然后2>&1把标准错误重定向到标准输出 也就是也被重定向到了/dev/null 那结果就是标准输出和标准错误都被重定向到了/dev/null
xiaokang007
2010-03-27
打赏
举报
回复
[Quote=引用 4 楼 litinghai 的回复:]
如果没有2>&1,产生的错误信息存放哪里,内存?
又如果没有>/dev/null 2>&1,搜索的结果放哪
[/Quote]
1,输出重定向(>)操作在命令执行发生错误时,会将错误信息直接显示到屏幕,并不记录到文件中,没必要放在内存
2.标准输出与错误输出重定向(&>)可以将标准输出和错误输出信息一并重新定向到文件,屏幕上不会显示任何信息 ,如果没有 >/dev/null 2>&1 ,结果 就直接显示在屏幕上咯。 没搜到就什么都不显示, 都到了 就显示结果
steptodream
2010-03-27
打赏
举报
回复
[Quote=引用 4 楼 litinghai 的回复:]
如果没有2>&1,产生的错误信息存放哪里,内存?
又如果没有>/dev/null 2>&1,搜索的结果放哪
[/Quote]
输出(显示)到屏幕(终端)
litinghai
2010-03-27
打赏
举报
回复
如果没有2>&1,产生的错误信息存放哪里,内存?
又如果没有>/dev/null 2>&1,搜索的结果放哪
xiaokang007
2010-03-27
打赏
举报
回复
steptodream 补充 的 是 ,受教
liucy1983
2010-03-26
打赏
举报
回复
这条命令就相当于放了一个不臭不响的屁,什么都没有增加,什么都影响
steptodream
2010-03-26
打赏
举报
回复
我习惯把/dev/null看成黑洞 只要把东西扔进去就没了
grep "lous" /etc/passwd>/dev/null 2>&1
在/etc/passwd查找是否包含字符串lous 并把标准输出和标准错误一起重定向到/dev/null
LINUX命令后面常见的>/
dev
/
null
解释
Linux中的标准输入输出 0 是标准输入,一般是从键盘获得输入 1 是标准输出,一般是输出到屏幕了 2 是标准错误,有时候屏幕上可以看到,但是重定向的文件中看不到的就是它了 >为重定向符号 >/
dev
/
null
是一个特殊的设备文件,这个文件接收到任何数据都会被丢弃,俗称“黑洞” 2>/
dev
/
null
意思就是把错误输出到“黑洞” ,也就是说如果你的命令出错...
Shell中>/
dev
/
null
2>&1和2>&1 >/
dev
/
null
在Linux系统中0,1,2是一个文件描述符: 0:system in,标准输入 1:system.out,标准输出 2:system.error,标准错误输出 >&是一个整体,2>&1指,将标准错误输出,重定向到标准输出中 >/
dev
/
null
2>&1 本来1指向命令行打印, 执行>/
dev
/
null
后,标准输出1重定向到/...
linux环境下运行脚本时常用>/
dev
/
null
2>&1 &这一串的作用
>/
dev
/
null
2>&1 & 的作用是将某个程序在后台运行,并将其标准输出和标准错误输出都丢弃,不在终端中显示或记录。这样做常常用于运行不需要显示输出的程序或脚本,并且让它在后台运行,不占用终端的输入输出...
linux命令>/
dev
/
null
2>&1的含义
的经典操作,目的是让命令静默执行(不显示任何输出和错误)。:一个特殊的“空设备”文件,所有写入它的内容会被丢弃(类似黑洞)。:表示将某个输出指向和标准输出(文件描述符。:重定向符号,将命令的输出写入指定位置。:让命令静默运行(不产生任何输出)。重定向到标准输出的位置(即跟随。:重定向标准错误(文件描述符。后台任务或脚本中不需要日志时。:标准输出(stdout):标准错误(stderr)(标准错误)的重定向逻辑。:标准输入(stdin):简化写法,效果等同于。(仅限 Bash)。调试时临时屏蔽输出。
Linux Shell 1>/
dev
/
null
2>&1 含义
shell中可能经常能看到:echo log > /
dev
/
null
2>&1 命令的结果可以通过%>的形式来定义输出/
dev
/
null
:代表空设备文件>:代表重定向到哪里,例如:echo "123" > /home/123.txt1:表示stdout标准输出,系统默认值是1,所以">/
dev
/
null
"等同于"1>/
dev
/
null
"2:表示stderr标准错误&:表示等同于的意思,2>&1,表示2的输出重定向等同...
系统维护与使用区
19,615
社区成员
74,562
社区内容
发帖
与我相关
我的任务
系统维护与使用区
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
复制链接
扫一扫
分享
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章