디렉토리 dir01를 만들고 ls -la를 하면 현재 디렉토리 c, dir01 이 보인다. 하지만
이렇게 if 문에 -d옵션(디렉토리만 출력)을 주고 filr을 출력하게 하면 파일만 출력하게 할 수가 있다.
그러면 실행해도 파일만 출력되는 것을 볼 수 있다.
백업파일 만들기
백업 파일을 만들고 싶다면 cp(복사) 해당 파일을 선택하고 .bak로 백업파일을 만들어준다.
그러면 이렇게 백업파일이 만들어진 것을 알 수 있다
그러나 이럴 경우 실행할 때마다 백업파일의 백업파일이 만들어지게 된다.
case.sh.bak.bak이렇게 말이다
따라서 이것도 조절을 해주어야 한다.
우선 백업 파일을 모두 지우기 위해 rm -rf ./*.bak(모든 파일에 대해 확장자가 .bak인 파일을 지워준다)
if [ "${file}" != "${file%.bak}" ]
then
continue
fi
치
%==뒤에 있는 것을 지우고 앞에 것과 비교한다.
만약 조회하는 파일이 a.bak이고 .bak을 지우고 조회할 때 이것이 같지 않다는 것은 이중으로 .bak이 있다는 소리임으로
continue를 해주고 백업파일을 만들어준다는 말이다!
이렇게 하면 몇번을 실행해도 백업파일이 이중으로 만들어지지 않는다.
이렇게 continue문을 활용할 수 있다.
728x90
'리눅스' 카테고리의 다른 글
셸 스크립트 프로그래밍 (0) | 2021.11.04 |
---|---|
SED (0) | 2021.11.03 |
AWK (0) | 2021.10.27 |
명령어 , 파일디스크립터, GREP (0) | 2021.10.26 |
매개변수 확장 (0) | 2021.10.26 |
댓글