ファイル名の一部をディレクトリ名に置き換えます。

ファイル名の一部をディレクトリ名に置き換えます。

他にも多くのファイルを含むフォルダがあり、ACB*そのいくつかは次のとおりです。scanAC_*

scanAC呼び出された部分を削除し、その部分があるディレクトリ名に変更したいと思います。

たとえば、ディレクトリにACB_200315ファイルが含まれていますscanAC_typefile_2S.dcmが、最後のファイルを次のように作成したいとします。ACB_200315_typefile_2S.dcm

今試してみましたが(Linux、SSH、名前変更オプションは利用できません)、うまくいきません。

for i in ACB*; do
cd ${i}
  mv scanID* ${i/scanID/${PWD##*/}};
cd ..
done

ベストアンサー1

最初は機能しなかったCostasが提供したスクリプトを調整して動作させるには、次のスクリプトを使用します。

for d in ACB*; do
  cd ${d}
    for f in scanID*; do
    mv "${f}" "${d}${f#scanID}" 
    done
  cd ..
done

おすすめ記事