52のサブディレクトリを持つディレクトリがあり、それぞれを5つのサブディレクトリがある11のフォルダに分割したいと思います。誰でも私にこれを達成する方法を提案できますか?
答え1
まず、あなたは数学的不可能性を要求していますが、私はそれを無視します。
あなたが尋ねる基本的な質問は簡単です。
[ ! -e split ] &&
set ./*/ &&
while mkdir split && [ 4 -lt "$#" ]
do mv "$1" "$2" "$3" "$4" "$5" split
mv split "${1%/}"
shift 5
done&& mv "$@" split && mv split "${1%/}"
何らかの名前や同様のものを指定しなかったため、何も上書きしないように注意する必要があり、最終的にアルファベット順に並べられたすべての5番目のディレクトリをすべての5番目の名前にちなんで名前付きディレクトリに移動します。つまり、現在のディレクトリに名前が付けられたファイルやディレクトリがない場合、これが行われます。分ける
答え2
私が間違って理解したのかはわかりませんが、次のように試してみることができます。
ls -1 | awk '{tmp=int($NR/5);system("mkdir Folder"$tmp);system("mv "$1" Folder"$tmp)}'