関数を含む bash スクリプトを作成しようとしているので.tar
、.tar.bz2
、.tar.gz
などのファイルを指定すると、関連するスイッチを指定して tar を使用してファイルを解凍します。
ファイル名をテストして末尾を確認する if elif then ステートメントを使用していますが、正規表現のメタ文字を使用して一致させることができません。
コマンドラインで「test」を使用しているスクリプトを常に書き換える手間を省くために、以下のステートメントが機能するはずだと思いました。ブラケット、引用符、およびメタ文字の可能な限りの組み合わせを試しましたが、それでも失敗します。
test sed-4.2.2.tar.bz2 = tar\.bz2$; echo $?
(this returns 1, false)
問題は単純なものであると確信しており、どこでも見てきましたが、その方法を理解することはできません。誰かが私がこれを行う方法を知っていますか?