tarバージョン1.26では、複数のtarファイルを独自のディレクトリに抽出します。

tarバージョン1.26では、複数のtarファイルを独自のディレクトリに抽出します。

tarファイルと同じ名前のディレクトリを作成して複数のtarファイルを抽出しようとしています。私はcentosを使用しており、tarのバージョンは1.26です。残念ながら、ユーザーの制限により、tarバージョンを1.29以降に更新することはできません。したがって、以下のコードスニペットは使用できません。

-exec tar xvf {} --one-top-level \;

作業コードを.ZIP形式にコピーしようとしましたが、成功しませんでした。

zipファイルの作業コード -

for file in `ls *.zip`; do unzip $file -d `echo $file | cut -d . -f 1`; done

tarファイルのコードコピー -

for f in 'ls *.tar'; do tar xvf $f -C 'echo $f|cut -d . -f 1'; done

このコードは "tar xvf $f -C" を渡すまで動作します。ファイル名が正しく印刷されます。

for f in 'ls *.tar'; do echo $f|cut -d . -f 1; done

次のエラーが発生します -

$ for f in 'ls *.tar'; do tar xvf $f -C 'echo $f|cut -d . -f 1'; done

tar:ls:開くことができません:そのファイルまたはディレクトリはありません

tar:回復不能エラー:今すぐ終了

ありがとう、

パンカイ

ベストアンサー1

おすすめ記事