異なるフォルダに複数の.pdbファイルがあります。ディレクトリ全体を繰り返し、すべてのファイルの名前を特定の名前test.pdbとして指定するにはどうすればよいですか?
サンプル構造
file1
file1.pdb
xyz.txt
file2
file2.pdb
xyz.txt
file3
file3.pdb
xyz.txt
必須出力構造
file1
test.pdb
xyz.txt
file2
test.pdb
xyz.txt
file3
test.pdb
xyz.txt
今使用しているコードは次のとおりです。
for d in */ ; do
mv *.pdb test.pdb
done
しかし、うまくいきません。
ベストアンサー1
各ディレクトリに.pdbファイルがあるとします(そうでない場合、この質問は意味がありません)。
for dir in */ ; do
[ -f "$dir/*.pdb" ] && mv "$dir/*.pdb" "$dir/test.pdb"
done