1

我有一个文件夹,其中有几个文件:

a b.jpg
c d.jpg

基本上,我想列出文件并对它们进行一些操作,但是我没有做到:

for i in $( ls $folder ); do echo $i; done

每一行输出都是文件名的一部分,而不是整个文件名:

a
b.jpg
c
d.jpg

我怎样才能在 Bash 中避免这种情况,

谢谢,

4

2 回答 2

4
for i in $folder/*; do echo "$i"; done

或者:

( cd $folder; for i in *; do echo "$i"; done )
于 2012-10-09T02:59:40.937 回答
2

我确信有一种更优雅的方法可以做到这一点,但这是我通常的做法:

ls $folder | while read filename; do
  echo $filename
done
于 2012-10-09T02:53:14.623 回答