如何用循环取带空格的文件

chnic 2008-06-17 03:41:04
HP-UNIX
在普通的命令行执行find . -type f -mtime +90 这个命令之后
会find 出来4个文件

./Aug2007/New Text Document.txt
./Aug2008/New Text Document.txt
./Jul2007/New Text Document.txt
./Sep2007/New Text Document.txt


我现在用
for tempFile in `find . -type f -mtime +90`
do
echo $tempFile
done
想取出来这4个文件 让后逐一删除
但是for循环是用空格分割。
取出来的是
./Aug2007/New
Text
Document.txt
这样的字符串。。

有什么办法 能让这个循环忽略文件名中的空格?
急。。求教。。
...全文
101 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
FreeElf 2008-06-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 bshawk 的回复:]
引用 2 楼 fierygnu 的回复:
引用 1 楼 cceczjxy 的回复:
find . -type f -mtime +90 -exec rm -rf ${} \;

直接就可以删除了。

正确:)

也可以在for之前设置IFS为'\n',这样就不会把空格当作分隔符了。

[/Quote]
bshawk 2008-06-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 fierygnu 的回复:]
引用 1 楼 cceczjxy 的回复:
find . -type f -mtime +90 -exec rm -rf ${} \;

直接就可以删除了。

正确:)

也可以在for之前设置IFS为'\n',这样就不会把空格当作分隔符了。
[/Quote]
dxing_1983 2008-06-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cceczjxy 的回复:]
find . -type f -mtime +90 -exec rm -rf ${} \;

直接就可以删除了。
[/Quote]
fierygnu 2008-06-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cceczjxy 的回复:]
find . -type f -mtime +90 -exec rm -rf ${} \;

直接就可以删除了。
[/Quote]
正确:)

也可以在for之前设置IFS为'\n',这样就不会把空格当作分隔符了。
cceczjxy 2008-06-17
  • 打赏
  • 举报
回复
find . -type f -mtime +90 -exec rm -rf ${} \;

直接就可以删除了。

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧