我有一个文件夹,里面有几个文件:
a b.jpg
c d.jpg
基本上,我想列出文件并对它们执行一些操作,但是我未能通过以下方式完成:
for i in $( ls $folder ); do echo $i; done
输出的每一行都是文件名的一部分,而不是整个文件名:
a
b.jpg
c
d.jpg
我怎样才能在 Bash 中避免这种情况,
谢谢
for i in $folder/*; do echo "$i"; done
或:
( cd $folder; for i in *; do echo "$i"; done )
我相信有一种更优雅的方法可以做到这一点,但这是我通常的做法:
ls $folder | while read filename; do
echo $filename
done