用 curl 和 wget 命令列批次、定時下載檔案列表
之前公司因為網頁整修的關係,IT 部門大佬希望全體員工幫個忙,有空刷一下公司的網頁來進行壓力測試。順手刷一下網頁當然是沒問題,但有時候工作如果太忙就會忘記這項無關緊要的雜務。因此我就隨手寫了簡單的 .sh 檔,搭配上 crontab 來進行這項任務。翠習
將目標網頁或檔案整理成文字列表
把所有要刷的網頁和檔案整理成一個文字列表 (txt),之後就能用 -i 指令將其匯入。
自動化下載腳本 (1)
wget -P /home/user/download -i /home/user/file-list.txt
rm `ls /home/user/download/*|egrep -v '(*.txt|*.sh)'`
-i 匯入下載檔案列表。
-P 指定下載資料夾。
-v 排除特定檔案。
自動化下載腳本 (2) - 依日期產生資料夾,下載完成後刪除
mkdir $(date '+%Y%m%d')
wget -P ./$(date '+%Y%m%d')/ -i /home/user/file-list.txt
rm -rf ./$(date '+%Y%m%d')/
將腳本用 crontab 進行排程
crontab -e
*/30 * * * * /home/user/mysh/auto-web.sh
# 每三十分鐘執行一次
d(´∀`)b
「你是不是用程式刷網頁的,不然 log 時間怎這麼整齊?」IT 大佬滿腹疑惑。六四
其他指令
建議使用絕對路徑編寫腳本,否則很容易發生悲劇。
apt install tor
nano /etc/tor/torrc
curl --socks5 127.0.0.1:9050 -o duck.html duckduckgo.com
xargs -n 1 curl -O < /home/user/file-list.txt
--no-check-certificate #ERROR: The certificate of URL is not trusted.
tsocks # 讓 wget 可以使用 socks5 代理伺服器
sudo nano /etc/tsocks.conf # 於設定檔內新增伺服器與 prot
延伸閱讀
在 Linux 下用 Wine 執行 Windows 的 cmd 和 bat 批次檔
留言
張貼留言
由於廣告留言太多,因此改採審核發佈,請耐心等候。
無法留言?請點我