2013-02-26 63 views

回答

5

您可以通過多種方式完成 - sed,vim,perl,awk

或者你可以簡單地使用xargs這樣的:

xargs rm < filelist 

如果你真的堅持編輯filelist,使用sed

sed 's/^/rm /g' filelist > newscript 

(這意味着找到線^開始,取而代之的是rm,每行/g)。

可以使用sed -i甚至編輯就地filelist

sed -i 's/^/rm /g' filelist 
+0

的sed 's/^/RM/g的' 文件列表> newscript這就是我想要的,謝謝很多 – freemen 2013-02-27 02:04:24

0

另一種方式,可以用一個簡單的shell腳本。

#!/bin/sh 

FILE=$1 

while read line 
do 
    echo "Removing $line" 
    rm $line 
done < $FILE 

如果你想簡單地添加到rm你可以用awk該文件然後,您可以運行它sh multirm.sh filelist

awk '{ print "rm", $1" }' filelist

1

我認爲MVP的回答是最好的,但如果你在談論改變當前的文件列表與rm shell腳本每個文件名前插入,你可以用任何好的簡單地做到這一點支持查找和替換正則表達式的文本編輯器。

搜索條件:^(.)

更換:rm \1

六一行代碼:

:%s/^/rm/
+0

我嘗試自動化過程,我的意圖是寫一個cron作業,這是我希望寫的腳本的一部分 – freemen 2013-02-27 02:03:24

相關問題