4

そう、

for f in *.c; do echo "That $f is the best C code I have ever seen"; done

cファイルがない場合は、喜んで印刷します

That *.c is the best C code I have ever seen

これは望ましくありません。cファイルがない場合にループを完全にスキップしたいという事実を修正/表現するエレガントな方法はありますか?

4

4 に答える 4

0

Bash では、shopt -s nullglobどのファイルとも一致しない glob が ID ではなく空の展開を返すようになります。

POSIXの場合、おそらく次のようなものです

case *.c in '*.c' ) echo no match ;; esac

名前が文字通り*.c.

于 2013-04-10T20:40:47.423 に答える
-2

試す:

for f in `ls -1 *.c`; do
 echo That $f is the best C code I have ever seen
done
于 2013-04-10T20:32:55.220 に答える