【发布时间】:2015-05-23 23:26:45
【问题描述】:
我在 Linux 中使用 bash 脚本来迁移数据库输出文件,我想知道在 bash 脚本中执行 Linux 命令时如何处理错误。
例如,通常当我想遍历目录中的文件时,我会这样写
# list files and grep results for .sql extension
for FILE in `ls | grep ".sql"`
do
echo "found file: $FILE"
done
这非常有效,因为如果 grep 具有 .sql 扩展名,则返回文件名或不返回任何内容
我想知道如何使用返回结果或错误的 Linux 命令,例如
ls ./*.sql
返回文件名,如果找不到文件则返回错误
ls: ./*.sql: No such file or directory
是否可以检查 Linux 命令是否在 bash 脚本中返回错误?
【问题讨论】:
-
改掉使用 ALL_CAPS_VARS 的习惯:some day you'll use PATH 然后想知道为什么你的脚本坏了。
-
通常我将我的变量命名为 LV_STR 或 LV_FILE,我不会愚蠢地命名一个 var PATH
标签: linux bash error-handling