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