2014-11-01 86 views
1

我已經知道您可以通過-O參數指定使用wget完成的下載的文件名。但是如果文件已經存在,它會被覆蓋。如果你沒有指定文件名wget永遠不會覆蓋文件,它只會附加一個.1,.2,.3等等。我想爲我指定的文件名添加解決方案。那可能嗎?使用wget指定要下載的文件名而不覆蓋

+0

這不是一個編程問題,unix.stackexchange.com是一個更好的地方問。 – Barmar 2014-11-01 00:35:31

回答

0

您是否嘗試過-nc或​​參數?它跳過覆蓋文件的下載?

+1

他不想跳過他們,他想附加一個版本後綴。 – Barmar 2014-11-01 00:36:04

+0

完全正確,對不起。 – Lucio 2014-11-03 07:30:43

2

這裏是如果需要尋找一種尚不存在的文件名,將追加數的函數:

newfile() { 
    fname=$1 
    count=0 
    while [ -e "$fname" ] 
    do 
     fname="$1.$((++count))" 
    done 
    echo "$fname" 
} 

使用範例:

$ ls 
$ newfile abc 
abc 
$ touch abc 
$ newfile abc 
abc.1 

隨着wget,你可能會使用它作爲:

wget http://example.com/index.html -O "$(newfile something)"