Bash While 循环

Bash While 循环

我有一个循环设置如下

#!/bin/bash
cat $1|while read line;do
    wget --limit-rate=50k http://url/$line.json -O got-$line;
    if [ "$?" -ne "0" ]; then
        rm got-$line;
    fi
    sleep 4;
done

但当我打电话给它时

./脚本输入文件.txt

我收到以下错误

rm: cannot remove `got-inputfile.txt': No such file or directory
--2012-12-30 12:18:06--  (start of wget output and everything works normal)

就像循环在有任何输入之前运行一样

有什么建议 ?

答案1

我怀疑url实际上包含&导致wget命令在后台运行的 a 。你需要引用它网址

相关内容