如何在期望条件下执行Shell脚本中if语句下的命令?

如何在期望条件下执行Shell脚本中if语句下的命令?
send "if [ `ps -ef | grep ttyS1 | sed -n 1p | cut -d ' ' -f 2` -eq 'ttyS1' ]; then
not_found='false'
else 
not_found='true'
fi\r"

我在 ttyS1 下尝试了很多次双引号和单引号,但它显示 1) ttyS1: 未知操作数 2) 双引号的错误数字

答案1

您使用-eq它来比较数字。当=你比较字符串时

send "if [ `ps -ef | grep ttyS1 | sed -n 1p | cut -d ' ' -f 2` = 'ttyS1' ]; then
not_found='false'
else 
not_found='true'
fi\r"

您可以使用双引号,因为它们已经被使用了。您还可以留下ttyS1不带任何引号的字符串

相关内容