rm 重定向
来源:互联网 发布:野口笑子 知乎 编辑:程序博客网 时间:2024/05/23 16:02
http://blog.sina.com.cn/s/blog_605f5b4f01014fna.html
ls
你的命令是:ls -l|grep "ab"|rm.我想你的意思大概是找到目录下的文件中有“ab”字符的文件 并将其删除,或是找到文件名中有“ab”的文件并将其删除。
ls-l。将显示(如果有二个文件):
total915
-rw-r--r--1 root root 3412 Mar 3 20:00 abcde.doc
-rw-r--r--1 root root 324 Mar 2 15:00 df.doc
然后把它当做参数给grep.这是的输出将会是:
grep:1:-rw-r--r--1 root 3421 Mar 3 20:00 abcde.doc
这是grep找到的符合有“ab”字符的那行。
ls
total
-rw-r--r--
-rw-r--r--
然后把它当做参数给grep.这是的输出将会是:
grep:1:-rw-r--r--
这是grep找到的符合有“ab”字符的那行。
解决的方法是把ls的-l选项去掉。将显示:
abcde.doc
df.doc
执行后还是不行。由于这里仅把ls的输出重定向,我们可以看作是把一个临时文件(其实并不是的)给了grep做参数,这个文件的内容是:abcde.docdf.doc。相当与在着个文件中寻找“ab”。对于这个文件将显示abced.doc。然后在把这个也看做是一个临时文件,传递给rm。也就是说用rm删除一个重定向,rm就执行不了了,因为 rm不能拿重定向做参数 rm `ls|grep ab` 才是正确的做法。
abcde.doc
df.doc
执行后还是不行。由于这里仅把ls的输出重定向,我们可以看作是把一个临时文件(其实并不是的)给了grep做参数,这个文件的内容是:abcde.doc
或者:对于grep后的结果 use xargs to turn standard input into arguments for
rm
ls | grep '^Dar' | xargs rm
对于简单的没有使用正则表达式的删除,也可以直接使用 rm Dar*
0 0
- rm 重定向
- Ubuntu下rm指令重定向
- 7、cp,mv,rm,alias,通配符,快捷键,重定向,wc,cut,排序,去重
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- 重定向
- android4.4短信新概念
- .infig.status: error: cannot find input file
- 趣文:如何向外行解释机器学习和数据挖掘
- ZOJ-3499
- zabbix的入门到精通之zabbix的触发器Trigger
- rm 重定向
- C# WinForm下一步一步实现文件的拖入和拖出
- Android数据存储之ContentProvider
- linux下备份文件时间属性少8小时
- 自己做个一个apache日志监控
- 20140101
- Linux用户空间与内核空间
- 黑马程序员《java基础总结(八)》(集合--Collection接口)
- VS2005 没有找到MFC80D.DLL的解决方法