【发布时间】:2014-08-18 19:18:25
【问题描述】:
我有一个 perl 脚本 - wow.pl。 我想编写一个将运行脚本的包装器,如果它成功退出, 向 IRC 聊天窗口回显一条消息,该窗口侦听 foo400host 上的端口 4514。 回声有效,但脚本不一定运行。
#!/bin/bash
if [ ~/scripts/wow.pl ]
then
echo "wow.pl is done" | /home/bin/nc foo400host 4514
fi
【问题讨论】:
-
使用
[ ~/scripts/wow.pl ],您正在测试字符串~/scripts/wow.pl是否不为空(始终为真)。如果要测试文件是否存在,请执行[ -f ~/scripts/wow.pl ] -
实际上出于某种原因 - 我认为 "~/scripts/wow.pl" 将评估为 0 或零,如果脚本成功,if 语句将运行 echo。跨度>
标签: bash error-handling execution