相关疑难解决方法(0)

Bash中是否有TRY CATCH命令

我正在编写一个shell脚本,需要检查是否已安装终端应用程序.我想使用TRY/CATCH命令来执行此操作,除非有更简洁的方法.

error-handling bash shell

280
推荐指数
10
解决办法
24万
查看次数

在Bash脚本中引发错误

我想在Bash脚本中引发错误,消息"Test cases Failed !!!".在Bash中如何做到这一点?

例如:

if [ condition ]; then
    raise error "Test cases failed !!!"
fi
Run Code Online (Sandbox Code Playgroud)

linux error-handling bash shell

84
推荐指数
5
解决办法
6万
查看次数

Linux shell试试看终于

有没有像linux try catch一样的linux bash命令?或者linux shell总是继续?

try {
   `executeCommandWhichCanFail`
   mv output
} catch {
    mv log
} finally {
    rm tmp
}
Run Code Online (Sandbox Code Playgroud)

syntax shell finally try-catch

62
推荐指数
2
解决办法
5万
查看次数

有人可以在bash中解释这个try/catch替代方案吗?

所以我发现bash不处理异常(没有try/catch).对于我的脚本,我想知道命令是否成功.

这是我现在代码的一部分:

command = "scp -p$port $user:$password@$host:$from $to"
$command 2>/dev/null

if (( $? == 0 )); then
    echo 'command was successful'
else
    echo 'damn, there was an error'
fi
Run Code Online (Sandbox Code Playgroud)

我不明白的是:

  • 第3行,为什么我要把2背后的$command
  • 第5行,究竟是什么$呢?

bash try-catch

13
推荐指数
2
解决办法
8835
查看次数

Cronjob - 如何以正确的方式做到这一点?

对应用程序的一个非常普遍的需求是每X分钟/小时运行一个脚本.基本上它没什么复杂的,只是一些PHP代码和一个crontab条目.

虽然我在过去几年中写过很多这些cronjobs,但我还没有看到任何最佳实践,至少没有那么多.与每次"后台处理"一样,许多事情都可能出错,尤其是在生产环境中.

其中:

  • 执行cron期间发生错误,脚本处理了一半的数据
  • cronjob意外地由另一个进程/用户错误/无论如何开始两次
  • cronjob比预期的时间更长,虽然没有完成处理数据,但脚本再次被调用
  • 等等

编写坚如磐石,强大的cronjob脚本有哪些最佳实践?编写一个锁定文件,断言只有一个实例运行,在oder中进行大量的日志记录和监控,以防止发送数千个重复的电子邮件?你有什么想法?

php cron

7
推荐指数
1
解决办法
631
查看次数

标签 统计

bash ×3

shell ×3

error-handling ×2

try-catch ×2

cron ×1

finally ×1

linux ×1

php ×1

syntax ×1