shell遍历目录时候的空格处理问题


之前说过 用find的-print0和xargs的-0参数可以很好的处理目录空格问题,但是xargs要实现复杂的指令就有点困难了,难道一定要外部执行一个脚本么。
比如我需要处理一个目录下的如下文件

[text]# tree
.
├── aa bb
│   └── a b.txt
├── cc dd
│   ├── jjll.txt
│   └── qq mm.txt
└── eeff
├── hi hi.txt
└── hi.txt

3 directories, 5 files[/text]
cat其内容进行grep筛选后写入该目录类以源文件名加YD后缀的新文件名内

尝试用for 循环实现

结果给出了这样的输出

可见for把空格认为是换行 导致都位了

网上搜索了下,说是要修改IFS

测试了一下 果然可以了
\b指光标回退一格

自己用while read实现了一个 也可以的


实例 批量解压当前目录的rar文件到同名文件夹中

Author Info :
  • From:shell遍历目录时候的空格处理问题
  • URL:http://blog.ihipop.info/2011/09/2781.html
  • Please Reserve This Link,Thanks!
  • 《shell遍历目录时候的空格处理问题》上有1条评论

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注