我在共享的Web主机上有一个cron脚本,偶尔会被杀死.我想在bash中创建一个循环,如果它被杀死,它会再次尝试,因为大多数时候它会成功.我在使用存储布尔值的语法时遇到问题:P
#!/bin/bash
VAR=0;
while [ $VAR ]; do
if nice -19 mysqldump -uuser -ppassword -h database.hostname.com --skip-opt --all --complete-insert --add-drop-table database_name > ~/file/system/path/filename.sql; then
VAR=1;
fi
done
Run Code Online (Sandbox Code Playgroud)
所以脚本从一个被杀死的进程恢复正常,但一旦它正常运行,新VAR值不会杀死while循环.
我究竟做错了什么?
你不需要辅助变量,考虑使用:
while ! mysqldump .....; do :;done
Run Code Online (Sandbox Code Playgroud)