重命名多個文件,我想使用shell腳本 在一個目錄重命名多個文件的文件具有共同的前綴:如何在UNIX
Modify: 2014-09-19 16:08:35.000000000 +0300-16:08:35.000000000-OCS_dmobfw1-oam_d04_20140919_155335.csv
Modify: 2014-09-19 16:09:23.000000000 +0300-16:09:23.000000000-OCS_dmobfw1-oam_d01_20140919_155423.csv
Modify: 2014-09-19 16:09:51.000000000 +0300-16:09:51.000000000-OCS_dmobfw1-oam_d09_20140919_155451.csv
Modify: 2014-09-19 16:12:40.000000000 +0300-16:12:40.000000000-OCS_dmobfw1-oam_d07_20140919_155740.csv
Modify: 2014-09-19 16:14:48.000000000 +0300-16:14:48.000000000-OCS_dmobfw1-oam_d05_20140919_155948.csv
Modify: 2014-09-19 16:18:14.000000000 +0300-16:18:14.000000000-OCS_dmobfw1-oam_d03_20140919_160314.csv
Modify: 2014-09-19 16:18:15.000000000 +0300-16:18:15.000000000-OCS_dmobfw1-oam_d08_20140919_160315.csv
我想從所有文件刪除以下部分:
修改:2014年9月19日16:08:35.000000000 + 0300-16:08:35.000000000-
這樣的輸出可以是這樣的:
OCS_dmobfw1-oam_d01_20140423_223805.csv OCS_dmobfw1-oam_d01_20140423_223905.csv
我嘗試:
for name in Modify* ;
do
mv "$name" $(echo $name | sed 's/Modify: 2014-09-19 16:18:14.000000000 +0300-16:18:14.000000000-/ /g') ;
done
你沒有告訴我們你的方法有什麼問題,但由於你的文件名包含空格(不這樣做),你會遇到麻煩。使用'find'可能是最安全的選擇。 – 5gon12eder 2014-09-24 16:02:35
可否請你告訴我更多關於如何在我的情況下使用find? – 2014-09-24 16:06:22