Bash 산책
배시를 쓰는데 햇갈렸던 부분을 정리해 본다.
나도 배시를 가끔 짜지만 이런것들이 없으면 참 짜증이 난다. 그래서 블로그를 정리해 본다. 역시 오늘도 코드로 애기해 본다.
두 명령을 세미콜론 대신 && 나 || 연결할 수도 있다.
cd $DIR && ls 는 먼저 cd의 실행이 설공했을 때만 ls를 실행한다.
cd $DIR || echo 'cd 실패'는ㄴ cd 명령이 실패했을 때만 echo 명령어를 실행한다.
예)
[tonyspark:579:~ $] DIR=
[tonyspark:580:~ $] cd $DIR && ls
2 naver.log naver.log2 project 공개 다운로드 문서 바탕화면 비디오 사진 음악 템플릿
[tonyspark:581:~ $] DIR=1
[tonyspark:582:~ $] cd $DIR && ls
bash: cd: 1: 그런 파일이나 디렉터리가 없습니다
[tonyspark:583:~ $] cd $DIR || ls
bash: cd: 1: 그런 파일이나 디렉터리가 없습니다
2 naver.log naver.log2 project 공개 다운로드 문서 바탕화면 비디오 사진 음악 템플릿
[tonyspark:584:~ $]
if문 없이 [[ 구문으로 뭔가를 판정하는 것도 가능
[[ -d $DIR ]] && ls "$DIR"
[tonyspark:588:~ $] [[ -d /tmp ]] && ls /tmp
VMwareDnD systemd-private-7e95ce236f894f81a321ec71bd89b7b6-ModemManager.service-BuKkeu
'VSCode Crashes' systemd-private-7e95ce236f894f81a321ec71bd89b7b6-colord.service-0MP5Rd
_cafenv-appconfig_ systemd-private-7e95ce236f894f81a321ec71bd89b7b6-rtkit-daemon.service-JbBfaK
config-err-MDOrFP systemd-private-7e95ce236f894f81a321ec71bd89b7b6-systemd-resolved.service-ro0Qky
fcitx-socket-:0 systemd-private-7e95ce236f894f81a321ec71bd89b7b6-systemd-timesyncd.service-bkOsUE
mintUpdate vmware-root
ssh-b3xUB8lHicx8 vmware-tonyspark
명령어가 두개면 {} 묶어야 한다.
[[ -d $DIR ]] || { echo "오류: $DIR"; exit; }
Author And Source
이 문제에 관하여(Bash 산책), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@kimyongyeon/Bash-산책
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
[tonyspark:579:~ $] DIR=
[tonyspark:580:~ $] cd $DIR && ls
2 naver.log naver.log2 project 공개 다운로드 문서 바탕화면 비디오 사진 음악 템플릿
[tonyspark:581:~ $] DIR=1
[tonyspark:582:~ $] cd $DIR && ls
bash: cd: 1: 그런 파일이나 디렉터리가 없습니다
[tonyspark:583:~ $] cd $DIR || ls
bash: cd: 1: 그런 파일이나 디렉터리가 없습니다
2 naver.log naver.log2 project 공개 다운로드 문서 바탕화면 비디오 사진 음악 템플릿
[tonyspark:584:~ $]
[[ -d $DIR ]] && ls "$DIR"
[tonyspark:588:~ $] [[ -d /tmp ]] && ls /tmp
VMwareDnD systemd-private-7e95ce236f894f81a321ec71bd89b7b6-ModemManager.service-BuKkeu
'VSCode Crashes' systemd-private-7e95ce236f894f81a321ec71bd89b7b6-colord.service-0MP5Rd
_cafenv-appconfig_ systemd-private-7e95ce236f894f81a321ec71bd89b7b6-rtkit-daemon.service-JbBfaK
config-err-MDOrFP systemd-private-7e95ce236f894f81a321ec71bd89b7b6-systemd-resolved.service-ro0Qky
fcitx-socket-:0 systemd-private-7e95ce236f894f81a321ec71bd89b7b6-systemd-timesyncd.service-bkOsUE
mintUpdate vmware-root
ssh-b3xUB8lHicx8 vmware-tonyspark
명령어가 두개면 {} 묶어야 한다.
[[ -d $DIR ]] || { echo "오류: $DIR"; exit; }
Author And Source
이 문제에 관하여(Bash 산책), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@kimyongyeon/Bash-산책
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
[[ -d $DIR ]] || { echo "오류: $DIR"; exit; }
Author And Source
이 문제에 관하여(Bash 산책), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kimyongyeon/Bash-산책저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)