2014-04-23 27 views
3

我想下載許多文件,並且可以使用unix以很長的方式執行此操作,但是如何使用循環功能執行此操作?我有許多表格,如CA30CA1-3以供下載。我可以把表名放入列表list("CA30", "CA1-3")並且有一個循環遍歷列表嗎?UNIX通過url列表循環並使用wget保存

#!/bin/bash 

# get the CA30 files and put into folder for CA30 
sudo wget -PO "https://www.bea.gov/regional/zip/CA30.zip" 
sudo mkdir -p in/CA30 
sudo unzip O/CA30.zip -d in/CA30 

# get the CA30 files and put into folder for CA1-3 
sudo wget -PO "https://www.bea.gov/regional/zip/CA1-3.zip" 
sudo mkdir -p in/CA1-3 
sudo unzip O/CA1-3.zip -d in/CA1-3 

回答

3
#!/bin/bash 

for base in CA30 CA1-3; do 
    # get the $base files and put into folder for $base 
    wget -PO "https://www.bea.gov/regional/zip/${base}.zip" 
    mkdir -p in/${base} 
    unzip O/${base}.zip -d in/${base} 
done 

我已刪除須藤 - 沒有理由擁有超級用戶權限執行特權的操作。如果您可以寫入特定文件夾,請更改工作目錄。

+0

謝謝你的工作很棒!我知道了。我必須學習更多關於sudo vs標準用法。另一件要學習的東西。 – muraenok