DMGR_PATH.out
파일에 다음이 포함됨
/opt/IBM/WebSphere/70/AppServer/profiles/Dmgr01/config CELLNAME
/IBM/websphere/was7.0/profiles/Dmgr01/config CELLNAME
이제 파일을 읽고 아래와 같이 줄을 부분 문자열로 묶으려고 합니다.
while IFS= read -r PATH; do
if [[ $PATH == /IBM/* ]] && [[ "$1" == "XX" ]]; then
SEARCH_DIR=$PATH
else if [[ $PATH == /opt/* ]] && [[ "$1" == "YY" ]]; then
SEARCH_DIR=$PATH
fi
fi
done<DMGR_PATH.out
echo "$SEARCH_DIR" | cut -d' ' -f1
하지만 이런 오류가 표시됩니다.
a: line 9: cut: No such file or directory
이 문제를 해결하는 데 도움을 줄 수 있는 사람이 있나요?
답변1
PATH
이 변수를 스크립트에서 루프 변수로 사용합니다. 이는 외부 유틸리티/명령을 찾기 위해 쉘에서 사용하는 환경 변수이기도 합니다.
cut
이것이 루프 후에 외부 유틸리티를 찾을 수 없는 이유입니다.
다른 변수 이름을 사용하세요.
일반적으로 저는 개인적으로 , 및 HOME
와 같이 쉘 자체에서 스크립트로 내보낸 변수 값을 사용하려는 경우가 아니면 쉘 스크립트에서 대문자 변수 이름을 사용하지 않는 경향이 있습니다 .PWD
PATH