我制作了一个bash脚本,调用jvm来执行jar编程。该脚本运行良好。我想使用prog`at'在某个时候执行我的bash脚本,但脚本只能部分工作:
#!/bin/bash
touch hello.world
while read line
do
touch another.hello.world
name=$line
...
done < "/users/me/readin.txt"
我使用的命令:
$ at -f myscript.bash now
仅生成 hello.world 文件,但没有 another.hello.world 。因此,我的脚本或命令用法一定有问题。我该怎么办?
答案 0 :(得分:0)
another.hello.world
文件未被创建的唯一概率是while循环的迭代不至少发生一次。
所以输入文件/users/me/readin.txt
可能是空白的。
我建议您使用set -x
选项执行代码,您会找到原因。它将显示正在执行的内容的跟踪。
#!/bin/bash
touch hello.world
set -x
while read line
do
touch another.hello.world
name=$line
...
done < "/users/me/readin.txt"
set +x