私は以下の簡単なスクリプトを用意しています。このスクリプトは、ファイル名とデリミタまたはカット位置の引数の数を持つ外部スクリプトを呼び出します。私の質問:ディレクトリには常にそのファイル名が含まれていて、どちらかの端に余分なテキストがあるという意味で、ファイル名を「動的なワイルドカードを使用して」作成する方法はありますか?しかし、スクリプトは 'contains'に基づいて完全なファイル名を取得するためにいくつかの種類のマッチを行うことができます。ファイル名の部分文字列に基づくスクリプト(おそらくワイルドカードを使用)
現在/解放/ ext /ディレクトリ、内容:
2011storesblah.dat
hrlatest.dat
emp_new12.txt
ディレクトリすなわち、今日、これらのファイルが含まれています(ただし、来週、このディレクトリ内のファイル名が若干異なるプレフィックスを持つことができ 例:。
stores_newer.dat
finandhr.dat
emps.txt
スクリプト:
#!/bin/bash
FILES='/release/ext/stores.dat "|"
/release/ext/emp.txt 1-3 4-11 15-40
/release/ext/hr.dat "|" 2'
for f in $FILES
do
echo `sh myexternalscript.sh $f`;
done
注:なしありスクリプト内のファイルがdirec内の2つ以上のファイルと一致するシナリオを処理する必要があります(常に1つのみに一致します)。 また、スクリプトで指定されているファイルの種類にしか一致しません。 また、私は再帰的に検索する必要はなく、/ release/ext /ディレクトリだけを調べる必要があります。 私はSunOS 5.10を実行しています。
SunOS 5.10を実行している場合、なぜあなたの質問に 'Linux'というタグを付けましたか? – thkala