我有一个Web服务器保存Web应用程序的日志文件编号。文件名示例为:
我试图想出一个BASH脚本使用wget和传递
无论如何,任何人都有一个如何做到这一点的样本? @H_502_3@谢谢!
dbsclog01s001.log dbsclog01s002.log dbsclog01s003.log@H_502_3@最后3位是计数器,他们可以得到一个高达100。 @H_502_3@我通常打开一个Web浏览器,浏览到文件像:
http://someaddress.com/logs/dbsclog01s001.log@H_502_3@并保存文件。这当然有点恼人,当你得到50日志。
我试图想出一个BASH脚本使用wget和传递
http://someaddress.com/logs/dbsclog01s*.log@H_502_3@但我有我的脚本的问题。
无论如何,任何人都有一个如何做到这一点的样本? @H_502_3@谢谢!
#!/bin/sh if [ $# -lt 3 ]; then echo "Usage: $0 url_format seq_start seq_end [wget_args]" exit fi url_format=$1 seq_start=$2 seq_end=$3 shift 3 printf "$url_format\\n" `seq $seq_start $seq_end` | wget -i- "$@"
$ ./seq_wget http://someaddress.com/logs/dbsclog01s%03d.log 1 50@H_502_3@或者,如果你有Bash 4.0,你可以只输入
$ wget http://someaddress.com/logs/dbsclog01s{001..050}.log@H_502_3@或者,如果你有curl而不是wget,你可以跟随丹尼斯·威廉姆森的答案。