如何在unix中的shell脚本中附加文件之前添加条件?

时间:2017-01-03 08:55:09

标签: shell unix

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 shell脚本中附加文件之前添加 if condition

2 个答案:

答案 0 :(得分:0)

#!/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

希望这会对你有所帮助

答案 1 :(得分:0)

似乎,我正在使用的Unix服务器是旧版本,并且存在一些语法错误:

cd $ TGTDIR
COUNT1 = cat File1.csv | wc -l
COUNT2 = cat File2.csv | wc -l
(echo" Exceptions / Reports&#34 ;;
if [$ count1 -gt 0]然后uuencode File1.csv File1.csv fi
if [$ count2 -gt 1]然后uuencode File2.csv File2.csv fi)| mailx -s" $ WORKFLOW_NAME在$ Datetime成功。 " $ MAIL_USER

*如果是的话,没有半结肠 * |的大块mailx -s 应该在')之后。括号在同一行

感谢您回答这个问题。 :)