我正在嘗試替換目錄中的檔案名串列。例如
cd /home/towers
ls
c3_slo_live_ox_dns_m2m_pcg.yaml
c3_slo_live_ox_dns_service_pcg_physnet4.yaml
c3_slo_live_ox_dns_service_pcg_physnet2.yaml
to
cd /home/towers
ls
c3_dsd_live_ox_dns_m2m_pcg.yaml
c3_dsd_live_ox_dns_service_pcg_physnet4.yaml
c3_dsd_live_ox_dns_service_pcg_physnet2.yaml
Which is the best way? can we use sed? Any example that I should try?
uj5u.com熱心網友回復:
如果你想要的是根據替換模式重命名檔案,你可以嘗試這樣的事情:
for file in *;do mv $file $(echo $file|sed 's/_slo_/_dsd_/'); done
- 這將遍歷當前目錄中的每個檔案,并將 _slo_ 字串替換為 _dsd_
我建議您在提交之前仔細檢查檔案名的其他部分是否無意中使用了此模式。
uj5u.com熱心網友回復:
這可能對您有用:
rename 's/_slo_/_dsd_/' *
這使用 perl 重命名程式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/521559.html
下一篇:更改awk中的上一個重復行
