예상되는 조건에서 쉘 스크립트의 if 문에서 명령을 실행하는 방법은 무엇입니까?

예상되는 조건에서 쉘 스크립트의 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따옴표 없이 문자열을 그대로 둘 수도 있습니다.

관련 정보