【发布时间】:2014-06-13 14:37:29
【问题描述】:
我有一个 shell 脚本,它打开一个文件并将它传递给 python 脚本来处理它。因此,如果文件有任何问题(例如,文件内容不是成功执行 python 脚本所需的格式),python 脚本会引发异常。因为我的目标是使用 python 脚本处理 N 个文件。我需要知道哪个文件导致脚本中断。我阅读了如何捕获命令执行引发的异常。 http://linuxcommand.org/wss0150.php 。但在我的情况下,它是引发异常的python脚本,我需要在shell脚本中知道引发了什么异常。任何人都可以帮助我如何进行此操作?
下面是sn-p的代码:
#!/bin/bash
yesterday=$(date --date "yesterday" "+%y%m%d")
ftoday=$(date --date "today" "+%m-%d-%Y")
year=$(date "+%Y")
fileList=$(find C:/logdata/$year/$ftoday/ -iname "*"$yesterday".log")
for var in $fileList
do
echo -e "\n START Processing File : $var" >> shelltestlog.txt
cat $var| ./scriptA.py
echo -e "\n END Processing File : $var" >> shelltestlog.txt
done
【问题讨论】:
-
如果您只想在脚本发现异常时停止脚本并立即进行调试。然后你可以使用语法:
./scriptA.py || exit 1