私はいくつかの検索を行ってきましたが、本当に必要なものを本当に助けたものは見つかりませんでした。.tgzファイル名の一部を削除し、新しく作成したディレクトリに移動してから抽出します。 Bash Shell
私はdirのすべての.tgzファイルの名前を変更し、新しいファイル名を使用してディレクトリを作成し、mv all .tgzファイルをシェル/ bashを使用して新しいディレクトリに作成しようとしています。
例:同じ最終的に全ての.tgz tarファイルを抽出するスクリプトの一部を有する
data/compared/1.0.11to1.0.12/
1.0.11.class.tgz
1.0.12.class.tgz
data/compared/1.0.12to1.0.13/
1.0.12.class.tgz
1.0.13.class.tgz
data/compared/1.0.13to1.0.14/
1.0.13.class.tgz
1.0.14.class.tgz
data/compared/1.0.14to1.0.15/
1.0.14.class.tgz
1.0.15.class.tgz
また、:
初期状態:
data/results/
test_a.1.0.11.class.tgz
test_b.1.0.12.class.tgz
test_c.1.0.13.class.tgz
test_d.1.0.14.class.tgz
test_d.1.0.15.class.tgz
結果状態ディレクトリは素晴らしいでしょう。
例:
データ/比較/ 1.0.14to1.0.15/ 1.0.14.class.tgz 1.0.15.class.tgz /extractedTar1.0.14 /extractedTar1.0.15
ありがとう、すべて!私がこれまで試したどのような
:!あなたは、これは私がすべてで欲しい正確に何をしません見ることができるように
for full_filename in *.tgz; do
extension="$full_{filename##*.}"
filename="$full_filename%.*}"
mkdir -p "$filename"
mv "$full_filename" "$filename/"
done
/binに/ bashの。
EDIT:追加機能要求! それぞれのtarballは、他の多くのdir /ファイルを格納する単一の(/ test)ディレクトリで構成されています。 など。 1.0.11.class.tgzはそれぞれの "/ test"ディレクトリで構成されています。
抽出された "test"ディレクトリの名前を "test_1.0.11"のように変更してから、誤って他のtarballを同じ "test"ディレクトリに展開するよう注意しながら、これらの各tarballを抽出する方法はありますか?ありがとう、トン!
試しましたか? – 123
これまでに試したことの上の投稿に編集を追加します。 – TNKaf
私は何を試してみましたか? – TNKaf