반응형
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 처리 하려면 따로 처리해야 하므로 주의해야 한다. (이거 때메 삽질 좀 했음..)
반응형
댓글