Linux 如何在bash中将特定的退出代码重定向到文件中
我现在有两个if语句,每个都有不同的退出代码。如何将这些退出代码存储到文件中Linux 如何在bash中将特定的退出代码重定向到文件中,linux,bash,Linux,Bash,我现在有两个if语句,每个都有不同的退出代码。如何将这些退出代码存储到文件中 if [ !condition 1 ];then echo "Please enter valid name" 1>&2 exit 11 fi if [ !condition 2 ];then echo "Please enter valid digits" 1>&2 exit 12 fi 是否仍然可以将这些特定的退出代码重
if [ !condition 1 ];then
echo "Please enter valid name" 1>&2
exit 11
fi
if [ !condition 2 ];then
echo "Please enter valid digits" 1>&2
exit 12
fi
是否仍然可以将这些特定的退出代码重定向到bash中的文件中?试试这个
echo“文件的某些数据”>>fileName您可以使用
$?
变量捕获退出代码:
#!/bin/bash
ls -l
exit_code=$?
echo "Exit code was: ${exit_code}" >> ~/myfile
if [ ${exit_code} -eq 0 ]
then
echo "Success"
else
echo "Error code: ${exit_code}"
fi
很难说清楚你想要什么。在将错误消息重定向到
stderr
时,您显然知道如何重定向。如果您只是想重定向11
或12
,您只需在退出11
之前添加echo 11>>您的.log
,并为下一个函数添加相同的内容。您可以在顶部声明日志文件变量,例如logfile=“your.log”
并在整个程序中重定向到$logfile
。您所说的“重定向这些退出代码”是什么意思?这是否回答了您的问题@杰库金:你所说的条件退出代码是什么意思。条件没有退出代码。命令不起作用。例如,代码中的test
命令有一个退出代码(0或1)。