次のフォルダ構造があります
root folder
|-al2
|- GER.zip
|- ENG.zip
|-ww
|- GER.zip
|- ENG.zip
など。フォルダ名は任意の文字列です。
次のようにファイルをソートしたいと思います。
root folder
|-ENG
|-al2
|- ENG.zip
|-ww
|- ENG.zip
|-GER
|-al2
|- GER.zip
|-ww
|- GER.zip
これをどのように自動化できますか?
修正する:フォルダ名はどのようなシステムにも従わない。ランダムな文字列です。
答え1
以下は単純なbashスクリプトです:
#!/bin/bash
for file in ./*/* ; do
lang=${file%.zip} # Remove the extension.
lang=${lang#./*/} # Remove the folder.
mkdir -p "$lang/${file%/*}" # Create the target folders.
mv "$file" "$lang/$file"
done