私は多くのサブディレクトリ(words/blabla、words/blabla)を含む../wordsというディレクトリを持っています。各サブディレクトリには、2 種類のファイル (.*1.txt) と (.*2.txt) が含まれています。私にとって必要なのは、これらのファイルごとにAWKスクリプトを実行することです。
似たようなものはありませんか?
for d in words/*
do
for f in .*[0-9].txt
do
awk -f script.awk ${f}
done
done
答え1
これは働きます:
for f in words/*/.*[12].txt
do
awk -f script.awk "$f"
done
答え2
bash
次の最新のシェルを使用するか、zsh
次のものを使用できます。
for i in words/*/*{1,2}.txt; do awk -f script.awk "$i"; done
何らかの理由で互換性が必要な場合は、/bin/sh
少し冗長で読みにくいこのソリューションを使用できます。
for i in words/*/*1.txt words/*/*2.txt; do awk -f script.awk "$i"; done
答え3
この試みfor d in words/*; do for f in ./words/$d/*{0..9}.txt; do awk -f script.awk $f; done