文件名与空格

时间:2011-01-24 11:06:21

标签: shell

我编写了一个shell脚本,它在所有目录中递归地选取所有文件,并准备一个包含上次修改文件大小的报告。 我面临的问题是,名称为“用户界面”的文件很少(中间有空格)。如何在shell脚本的for循环中使用那些文件并获取其中的文件和目录。 提前致谢

3 个答案:

答案 0 :(得分:3)

只需将文件名变量放在双引号"$FILENAME"

之间

答案 1 :(得分:2)

您可能尝试使用for file in $(command)之类的内容。相反,使用带有globbing的while read循环或for循环。确保引用包含filenamess的变量。

#!/bin/sh
command | while read -r file
do
    something_with "$file"
done

或者,在支持进程替换的shell中:

#!/bin/bash
while read -r file
do
    something_with "$file"
done < <(command)

如果您只是遍历文件列表:

for file in "$dir"/*
do
    something_with "$file"
done

答案 2 :(得分:0)

Google搜索引导我this page