linux shell 判断是否执行成功
高洛峰
高洛峰 2017-04-17 16:34:01
0
2
457

使用linux的shell脚本来批量备份数据库,但是数据库并不一定是存在的。而执行会导致报错:

mysqldump -u$DbUser -p$DbPwd --master-data $dbname | gzip > $filepath if [ $? -eq 0 ] then echo "[$dbname] $filepath success!" >> $LogFile else echo "[$dbname] $filepath Error Failed" >> $LogFile rm -rf $filepath fi

当数据库是不存在的时候,使用$?捕获到的还是0导致备份提示成功。
这里是如何判断数据库 mysqldump 是否有报错提示?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全員に返信 (2)
PHPzhong

可以在mysqldump命令中添加一个错误输出重定向到文件,如mysqldump xx oo 2>err.log|gzip >...
然后在if语句里判断err.log是否为空[ -s err.log ],为空则表示成功,不为空则为失败。

いいねを押す+0
    刘奇

    我一般会写一个简单的 php 或 python 脚本检查数据库,exit 不同的值。

    いいねを押す+0
      最新のダウンロード
      詳細>
      ウェブエフェクト
      公式サイト
      サイト素材
      フロントエンドテンプレート
      私たちについて 免責事項 Sitemap
      PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!