我的 if 语句没有正常工作,我不明白为什么。
这就是我所拥有的
for LINE in $(cat someFile.txt)
do
inst=$(echo $LINE | awk -F, '{print $4}')
echo $inst # To verify is displaying correctly
if [ $inst == "UP" ]
then
echo "Program skips this when $inst is UP"
elif [ $inst == "DN" ]
then
echo "Program skips this when $inst is DN"
fi
done
当我使用-eq
IF 语句时,程序会显示这个UP^M: 0403-009 The specified number is not valid for this command.
有任何想法吗??
编辑。找到答案:
出于某种原因,程序在最后添加了一个返回字符。
添加此:inst=$(echo $inst | tr -d '\r')
在获取列值后立即解决问题。