を扱う場合、私は.TGZ圧縮ファイルの数千人を持っているUNIXでのディレクトリを持って、彼らはこのパターンに従います。シェルスクリプト - ファイル名のパターン
01.red.something.tgz
02.red.something.tgz
03.red.anything.tgz
04.red.something.tgz
01.blue.something.tgz
02.blue.everything.tgz
03.blue.something.tgz
04.blue.something.tgz
01.yellow.something.tgz
02.yellow.blablathing.tgz
03.yellow.something.tgz
04.yellow.something.tgz
彼らは、ファイルシステムから大量に使用している、と私は必要ファイル自体を抽出せずにそれらを一覧表示する。実際には時間がかかるので、このシェルスクリプトは必要に合っていると思います。私はシェルスクリプトにちょっと新たなんだ、私はこの.SH
$pattern = "red"
for file in *.tgz
do
if [[ ${file} == '...${pattern}.*.tgz' ]]; then
echo" ==> ${file} match the pattern and the output dir is : out/"
tar -tf $file > ./out/$file
else
echo "${file} Doesn't match the pattern"
fi
done
を作ったが、私はかの部分で間違った何かを作った、とパターンが一致した場合でも、私はしましたので、学んでいます'はパターンと一致しません'というメッセージが表示されます。
の場合はちょっと単純ですが、なぜこのフェラが動作しないのか理解できません。あなたがなぜこれがうまくいかないのか説明できるなら、私は感謝しています。
ありがとうございます。
'== '一致演算子はありません。 'globing 'を読み込み、forループの' *。$ {pattern}。*。tgz'を直接使用してください –
ありがとう、私はこれについていくつかの検索をします – Imkls