Linuxで初期フォルダの内容を含むサブフォルダを解凍する

Linuxで初期フォルダの内容を含むサブフォルダを解凍する

サブディレクトリ(など)/Landsat_Data/を含むディレクトリがあります。各サブディレクトリにはファイルなどが含まれ、各ファイルには次のtifファイルまたはxmlファイルが含まれています。Landsat_Data/Site1Landsat_Data/Site2.tar.gz/Landsat_Data/Site2/LE70930862008092-SC20160107074735.tar.gz.tar.gz

-rw-r--r-- espa/ie  29952 2016-01-07 14:57 LT50930861991021ASA00_sr_snow_qa.tif 

私が望むのは、各tarファイルを独自のサブディレクトリ(たとえばLandsat_Data/Site2/LE70930862008092-SC20160107074735/)に抽出することです。

これまで、Landsat_Dataディレクトリで次のコマンドラインを使用していました。

find . -type f -name "*.tar.gz" -execdir tar -xvzf {} \;

しかし、このコマンドはすべてのtifファイルとxmlファイルを各サブディレクトリ(たとえば)に抽出しますが、私は解凍してすべてのtifファイルとxmlファイルを含むtifファイルとxmlファイルというサブサブディレクトリを持ちたいとLandsat_Data/Site2思います。私が望むことをどのように達成できるか知っていますか?LE70930862008092-SC20160107074735.tar.gzLE70930862008092-SC20160107074735

ベストアンサー1

努力する

find . -type f -name "*.tar.gz" -execdir tar -xvzf {} \;

~によるとman find

-execdirコマンド;

-execdir コマンド{} +

-execに似ていますが、指定されたコマンドは通常、検索を開始したディレクトリではなく、一致するファイルを含むサブディレクトリで実行されます。

おすすめ記事