我正在使用ubuntu 11.04并且我正在尝试编写一个bash脚本,该脚本可以在一个新标签中打开每个文件的URL,其中睡眠时间为15秒左右,文件长度为198行,每个文件都有一个URL线。我有两种可能的方法来做到这一点
方法一
while read line; do
firefox -new-tab "$line"
sleep 15
done < file
方法二
for line in $(cat file); do
firefox -new-tab "$line"
sleep 15
done
现在两种方法似乎都给出了相同的结果,它打开firefox与第一行的url并且在我关闭浏览器之前不会打开任何其他URL,在这种情况下它会打开带有url的firefox在第二行等...
我在方法一中取得了一些成功,当我删除sleep命令时,它会尝试在不同的标签中一次打开所有网址
获得了方法一的代码我得到了方法二的代码:http://whileonefork.blogspot.com/2011/02/bash-for-each-line-1-liners.html
答案 0 :(得分:4)
只需尝试以下代码:
while read line; do
firefox -new-tab "$line" & 2>/dev/null
sleep 15
done < file
答案 1 :(得分:0)
对我来说,如果我在启动脚本之前只打开浏览器窗口,这两种方法都有效。