리눅스 쉘 프로그래밍에서 if의 조건을 어떻게 줘야 하나요?

ikpil의 이미지

일단...

#!/bin/bash
test > check_info.txt
 
if  = $?
then
     echo "ok!!"
else
     echo "no!!"
fi

이렇게 hehe 파일로 만들었습니다.

$? 가 test 의 리턴값을 받는건 알겠으나 이 값이 5850 인지 체크 하는 방법을 모르겠습니다.
if 5850 = $? 로 하면, 5850을 알 수 없다는 에러가 나옵니다.

도데체 if 의 조건문으로 $? 와 5850을 어떻게 비교 할 수 있나요?

Fe.head의 이미지

man test

if test $? -eq 5850 ; then
...
else
...
fi

if [ $? -eq 5850 ] ; then
...
else
...
fi

-----------------------
과거를 알고 싶거든 오늘의 네 모습을 보아라. 그것이 과거의 너니라.
그리고 내일을 알고 싶으냐? 그러면 오늘의 너를 보아라. 그것이 바로 미래의 너니라.
-----------------------
내가 쓰는 글은 틀릴 수 있습니다.

고작 블로킹 하나, 고작 25점 중에 1점, 고작 부활동
"만약 그 순간이 온다면 그때가 네가 배구에 빠지는 순간이야"

ikpil의 이미지

첫번째 꺼로 하면 잘 되고, 두번재 꺼로 하면 에러 납니다. 제가 몰 잘못 했을 까요? 에러 메세지는 다음과 같습니다.

line 5: [1: command not found

Fe.head의 이미지

띄어쓰기 잘해보세요.
[ 앞뒤로 띄어쓰기 있어야합니다.

그래두 안되면

[ 파일이 있나 확인해 보세요.

$ ls /bin/\[
ls: cannot access /bin/[: 그런 파일이나 디렉토리가 없습니다
 
$ ls /usr/bin/[
/usr/bin/[
 
$ whereis [
[: /usr/bin/[

-----------------------
과거를 알고 싶거든 오늘의 네 모습을 보아라. 그것이 과거의 너니라.
그리고 내일을 알고 싶으냐? 그러면 오늘의 너를 보아라. 그것이 바로 미래의 너니라.
-----------------------
내가 쓰는 글은 틀릴 수 있습니다.

고작 블로킹 하나, 고작 25점 중에 1점, 고작 부활동
"만약 그 순간이 온다면 그때가 네가 배구에 빠지는 순간이야"

bushi의 이미지

띄어쓰기요.
kldp 검색하면 bash 번역본이 나옵니다. c shell 스타일로도 가능하니 참고하세요.

OTL