这里有点羞辱bash。寻求帮助。我正在尝试编写一个带有int参数的脚本,并在10 *参数秒内休眠,然后显示当前的日期和时间。
我还想要一个无限循环,以及一个消息,当它被ctrl c出来时回显。
这是我到目前为止所得到的:
#!/bin/bash
trap "echo I'm done here && exit" INT
time=10*$1
now="$(date)"
while :
do
sleep "$time"
echo ""
echo "Current date and time: $now"
done
答案 0 :(得分:1)
#!/bin/bash
trap "echo \"I'm done here\" && exit" INT
if [[ ! $1 ]]; then # check @triplee comment below
echo >&2 "Missing arg 1"
exit 1
fi
while true; do
sleep $((10 * $1))
echo "Current date and time: $(date)"
done
检查http://mywiki.wooledge.org/ArithmeticExpression
并查看@JNevill在评论上面说的内容