約150個のテキストファイルを含むフォルダがあります。 150個のファイル名でフォルダを作成したいです。その後、テキストファイルをそのフォルダに移動したいと思います。
myfolder ディレクトリのファイル名の例:
~/myfolder/
|______ ajhaslf.txt
|______ oiueed.txt
|______ dsflije.txt
私は新しい構造を次のようにしたいと思います。
~/myfolder/
|______ ajhaslf
|____ajhaslf.txt
|______ oiueed
|____oiueed.txt
|______ dsflije
|____dsflije.txt
もちろん、ファイル名でディレクトリを作成することは私にとっては問題ではありませんmkdir
。
ベストアンサー1
おめでとうございます正しい考えを持ってください:
set -o errexit -o nounset
cd ~/myfolder
for file in *.txt
do
dir="${file%.txt}"
mkdir -- "$dir"
mv -- "$file" "$dir"
done
これはPOSIXと互換性がなければなりません。これはいいえヨガク。そうだろういいえsomething.txt
これは、名前が2つのファイルがある場合に機能しますsomething.txt.txt
。