2016-04-25 56 views
1

我之前問過這個,但現在下面的bash似乎刪除並下載了輸入文件中的所有文件。基本上輸入中的所有行(6)都是文件並被讀入$line變量。當我echo$line我可以看到那裏的文件,他們確實被刪除,但他們也得到下載,我不需要他們,我也不知道他們爲什麼這樣做。謝謝 :)。bash刪除作爲變量傳遞的文件中的文件

強大的文本

file1.txt 
file2.txt 
file3.txt 
file1.pdf 
file2.pdf 
file3.pdf 

慶典

# add filenames as variable and remove files from list 
while read line; do 
echo $line (only there to verify that the files are in the variable) 
wget --user=xxxxx --password=xxx --xxxx --method=DELETE \ 
xxx://www.example.com/xx/xxx/xxx/$line 
done < /home/cmccabe/list 
rm /home/cmccabe/list 
+1

這是一個wget問題,而不是bash問題。你期待wget電話做什麼? –

+1

當你使用像這樣的變量:xxx://www.example.com/xx/xxx/xxx/$line時,你應該把整個字符串或至少變量放在雙引號中,如下所示:「xxx:// www.example.com/xx/xxx/xxx/$line」。它將防止任何可能的語法錯誤,如果源文件包含如下內容:「我的酷文件與spaces.txt」。 –

回答

2

您可以使用-O /dev/null選項即:

wget --user=xxxxx --password=xxx --xxxx --method=DELETE \ 
xxx://www.example.com/xx/xxx/xxx/$line -O /dev/null 

要放棄wget's輸出並避免保存輸出文件。

+1

非常感謝你:)。 – Chris