在unix中,如何在shell脚本中附加文件之前添加条件?
上面的代码未运行,并且显示缺少“')”的语法错误。 在unix shell脚本中附加文件之前,谁能告诉我如何添加if条件在unix中,如何在shell脚本中附加文件之前添加条件?,shell,unix,Shell,Unix,上面的代码未运行,并且显示缺少“')”的语法错误。 在unix shell脚本中附加文件之前,谁能告诉我如何添加if条件 cd $TGTDIR count1=`cat File1.csv | wc -l` count2=`cat File2.csv | wc -l` (echo "Exceptions/Reports "; if [ $count1 -gt 0 ]; then uuencode File1.csv File1.csv fi if [ $count2 -gt 1 ]; then
cd $TGTDIR
count1=`cat File1.csv | wc -l`
count2=`cat File2.csv | wc -l`
(echo "Exceptions/Reports ";
if [ $count1 -gt 0 ]; then uuencode File1.csv File1.csv fi
if [ $count2 -gt 1 ]; then uuencode File2.csv File2.csv fi )
| mailx -s " $WORKFLOW_NAME was successful at $Datetime. " $MAIL_USER
希望这将对您有所帮助看来,我正在使用的Unix服务器版本较旧,存在一些语法错误: cd$TGTDIR
count1=
cat File1.csv|wc-l
count2=
cat File2.csv|wc-l
(回应“例外情况/报告”;
如果[$count1-gt 0],则uuencode File1.csv File1.csv fi
如果[$count2-gt 1],则uuencode File2.csv File2.csv fi)| mailx-s“$WORKFLOW\u NAME在$Datetime成功。”$MAIL\u用户 *if后无分号
*|mailx-s的块应该紧跟在同一行的“')括号之后
谢谢你回答这个问题。:) 您可能需要在以
(
)开头的行末尾使用\。实际上有两种不同的if条件。它不是嵌套的if。其次,下面的代码工作正常。cd$TGTDIR count1=cat File1.csv | wc-l
count2=cat File2.csv | wc-l
(echo“异常/报告”;uuencode File1.csv File1.csv uuencode File2.csv File2.csv)| mailx-s“$WORKFLOW\u NAME在$Datetime成功。”$MAIL\u用户
#!/usr/bin/env bash
count1=`cat ~/File1.txt | wc -l`
count2=`cat ~/File2.txt | wc -l`
echo "Exceptions/Reports "
$(
if [[ $count1 -gt 0 ]]; then
uuencode ~/File1.txt File1.txt
elif [[ $count2 -gt 1 ]]; then
uuencode ~/File2.txt File2.txt
fi
) | mail -s "I was successful at $(date)." your@gmail.com