親ディレクトリのファイルと同じ名前で子ディレクトリを作成します。

親ディレクトリのファイルと同じ名前で子ディレクトリを作成します。

親フォルダに10個のファイルがあるとしましょう。abc

1fyr.pdb
1r0p.pdb
1r1w.pdb
1shy.pdb
1ssl.pdb
2g15.pdb
2rfn.pdb
2rfs.pdb
2wd1.pdb
2wgj.pdb

同じフォルダに10の異なるディレクトリを作成し、abcフォルダに同じ10の名前を使用したいと思います。

答え1

#!/bin/sh
for file in *; do
    mkdir "${file%.*}"
done

この${file%.*}構成は拡張を削除します。

これは短く、1行で使用できます。for file in *; do mkdir "${file%.*}"; done

関連情報