반응형
shell 작성을 하다가 복사하는데 오류가 발생을 하면 잡아내야 할 일이 생겼다.
각설하고 코드는 아래와 같다.
if [[ $1 -eq 10 ]]
then
cp a.txt b.txt
elif [[ $2 -eq 20 ]]
then
cp a.txt c.txt
fi
if [ "$?" != "0" ]
then
echo "error" 1>&2
exit -1
fi
echo "ok"
control-m 에서 선행작업으로 처리를 하는 건데 -1로 리턴하면 실패로 인식을 한다.
그리고 if elif 로 조건을 한번에 잡아야 한다.
$? 에는 바로 이전 결과만 담고 있어서 각각 if 처리 하려면 따로 처리해야 하므로 주의해야 한다. (이거 때메 삽질 좀 했음..)
각설하고 코드는 아래와 같다.
if [[ $1 -eq 10 ]]
then
cp a.txt b.txt
elif [[ $2 -eq 20 ]]
then
cp a.txt c.txt
fi
if [ "$?" != "0" ]
then
echo "error" 1>&2
exit -1
fi
echo "ok"
control-m 에서 선행작업으로 처리를 하는 건데 -1로 리턴하면 실패로 인식을 한다.
그리고 if elif 로 조건을 한번에 잡아야 한다.
$? 에는 바로 이전 결과만 담고 있어서 각각 if 처리 하려면 따로 처리해야 하므로 주의해야 한다. (이거 때메 삽질 좀 했음..)
반응형
'TechNical > Unix' 카테고리의 다른 글
unix sendmail html format (0) | 2022.11.07 |
---|---|
unix 쉘 문자를 숫자로 연산시 주의 점 (0) | 2020.02.11 |
Solaris에 Subversion 설치하고 repository 설정하고 거북이로 연결하기 (2) | 2011.11.23 |
UNIX] 실행경로를 주의하자!! (2) | 2011.08.01 |
UNIX 네트워크 파일 시스템(윈도에 네트워크 드라이브 같은거) (0) | 2008.05.14 |
댓글