0

Linux でのパターン マッチングに関する一般的な質問があります。たとえば、多くのファイルを連続して実行するスクリプトがあり、次のように実行されます。

./script -i file1 -j file2

最後の 2 文字を除いて名前が同じファイルのペアがたくさんあります。たとえば、file1 は で終わり、-1file2 は で終わり-2ます。

-ファイル名の他の場所には表示されないので、正規表現を使用してスクリプトを介してすべてのファイルのペアをパイプする方法があるはずだと思いますか?

4

1 に答える 1

1

すべてのファイルを含むフォルダーがある場合:

$ ls
fileA-1   fileB-1   fileC-1
fileA-2   fileB-2   fileC-2

以下をせよ:

for file1 in *-1
do
    # This will remove the trailing '1' from the file and append a '2'
    # learn more about parameter substitution at
    # http://tldp.org/LDP/abs/html/parameter-substitution.html
    file2="${file1%1}2"

    #execute!
    ./script -i "$file1" -j "$file2"
done
于 2013-07-30T09:11:58.407 に答える