Bash 셸 스크립트에 파일 또는 디렉터리가 있는지 확인하는 방법

Bash 셸 스크립트에 파일 또는 디렉터리가 있는지 확인하는 방법

Bash 스크립트에서 파일 또는 디렉토리가 있는지 확인

Bash는 Linux에서 정기적으로 실행되는 명령을 자동화하는 데 사용됩니다. 파일/디렉토리에 대한 작업을 위한 명령은 매우 자주 사용되며 일반적으로 이러한 명령을 실행하기 전에 특정 파일이나 디렉터리가 있는지 확인해야 합니다. 이 검사를 수행하는 방법을 살펴보겠습니다.

구문 및 사용법

파일

파일이 있는지 확인하려면 다음 구문을 사용합니다.

[ -f  ]

표현식 [ -f ]은 0을 반환합니다. 즉, 존재하는 경우 성공이고 존재하지 않으면 0이 아닌 상태를 반환합니다. 일반적으로 이것은 if명령문 에서 조건으로 사용됩니다 .

if [ -f  ]
then
  
fi

반환된 값을 부정하려면-f 부정 연산자( !) 를 앞에 붙이면 됩니다.

if [ ! -f  ]
then
  
fi

이 경우 파일 이 존재하지 않으면 조건이 충족 됩니다. 반환된 0이 아닌 상태(거짓)가 무효화되고 0(참)으로 간주되기 때문입니다.

Bash 셸 스크립트에 파일 또는 디렉터리가 있는지 확인하는 방법

Bash 셸 스크립트에 파일 또는 디렉터리가 있는지 확인하는 방법

검사할 파일이 현재 디렉토리에 존재하지 않고 다른 디렉토리에 존재하는 경우 파일 이름만 언급하는 대신 파일의 전체 경로를 언급해야 합니다.

디렉토리

파일 검사에 사용되는 것과 유사한 구문이 디렉토리 검사에 사용됩니다.

[ -d  ]

파일에 대한 명령문과 유사하게 이 명령문은 디렉토리가 존재하는 경우 0(즉, 성공)을 리턴하고 0이 아닌 값(즉, 존재하지 않는 경우 실패 상태가 리턴됨)을 리턴합니다. 이것은 또한 if문 조건 에서 일반적으로 사용됩니다 .

if [ -d  ]
then
  
fi

반환된 상태를 무효화하려면 -d부정 연산자( !)를 앞에 붙 입니다.

if [ ! -d  ]
then
  
fi

조건은 이 경우 디렉토리가 존재하지 않으면 충족되고(상태 0), 디렉토리가 존재하면 실패합니다(0이 아닌 상태).

Bash 셸 스크립트에 파일 또는 디렉터리가 있는지 확인하는 방법

앞서 파일에 대해 언급했듯이 검사할 디렉토리가 현재 디렉토리가 아닌 다른 위치에 존재한다면 디렉토리 이름만 입력하는 것이 아니라 전체 디렉토리 경로를 입력해야 한다.

💡 [...]여기에 사용 된 대괄호 구문( )은 실제로 test. 옵션 -f-d이 명령의 기능입니다. 자세한 내용은 테스트 매뉴얼 페이지( man test)를 참조하십시오 .

Bash 스크립트에서 확인

위의 예에서는 터미널에서 직접 구문을 사용했습니다. 쉘은 루프나 조건문( if우리의 경우)을 만날 때마다 프롬프트를 계속하고 사용자가 계속 블록을 입력할 수 있도록 합니다.

Bash 스크립트 내부에서 동일한 구문을 사용할 수 있습니다.

Bash 셸 스크립트에 파일 또는 디렉터리가 있는지 확인하는 방법

#!/bin/bash 시작시 파일이 실행될 때 인터프리터 사용을 지정합니다. Bash가 오늘날 가장 일반적으로 사용되는 셸이지만 일부 사용자는 zsh이 파일의 시작 부분에서 bash 대신 지정해야 하는 과 같은 셸을 선호  합니다.

 이 파일에 대한 실행 권한을 부여하려면 다음을 실행 하십시오.

chmod +x test.sh

마지막으로  파일을 실행하려면 다음을 실행하십시오 .

./test.sh

Chromebook에서 복사하여 붙여넣는 방법

Chromebook에서 복사하여 붙여넣는 방법

Chromebook으로 전환할 때 가장 먼저 궁금해할 수 있는 것은 이전 OS에서 손에 꼽히던 것과 같은 기본적인 작업을 수행하는 방법입니다. 복사 및 붙여넣기는 한 지점 또는 다른 지점에서 사용해야 하는 기본적인 기능 중 하나입니다.

tt를 사용하여 Linux에서 타이핑 테스트를 수행하는 방법

tt를 사용하여 Linux에서 타이핑 테스트를 수행하는 방법

기술의 현대 시대에 타이핑은 많은 직업에서 가장 일반적인 활동 중 하나가 되었습니다. 정확하게 입력하는 법을 배우면 같은 시간에 더 많은 일을 할 수 있습니다.

Ubuntu에서 Wi-Fi가 작동하지 않습니까? 해결 방법은 다음과 같습니다.

Ubuntu에서 Wi-Fi가 작동하지 않습니까? 해결 방법은 다음과 같습니다.

Ubuntu는 견고성과 비교적 적은 오류로 유명합니다. 그러나 확실히 문제가 많은 것은 아닙니다. 그러한 문제 중 하나는 Wi-Fi 드라이버에 있습니다. Wi-Fi가 작동하지 않는 경우에만 시스템 전원을 켤 수 있습니다.

Ubuntu의 루트 수퍼유저의 차이점

Ubuntu의 루트 수퍼유저의 차이점

Ubuntu의 루트 수퍼유저의 차이점이 무엇인지 궁금하십니까? 글쎄, 우리는 당신을 여기에서 다루었습니다.

Chromebook에서 QR 코드를 만들고 스캔하는 방법

Chromebook에서 QR 코드를 만들고 스캔하는 방법

빠른 응답 코드 또는 QR 코드는 기존 바코드보다 더 많은 정보를 포함하는 고급 바코드입니다. 이 코드는 2차원이므로 세로 또는 가로로 스캔할 수 있습니다.

Arch Linux에서 패키지를 설치하고 제거하는 방법

Arch Linux에서 패키지를 설치하고 제거하는 방법

Arch Linux에 패키지를 설치하고 싶지만 방법을 모르십니까? 많은 사람들이 Debian 기반 배포판에서 Arch로 처음 마이그레이션할 때 이 문제에 직면합니다. 그러나 패키지 관리자를 사용하여 Arch 기반 시스템에서 패키지를 쉽게 관리할 수 있습니다.

Ubuntu의 Alt-Tab에서 Windows 그룹을 해제하는 방법

Ubuntu의 Alt-Tab에서 Windows 그룹을 해제하는 방법

Ubuntu에서는 기본적으로 창 대신 응용 프로그램을 전환할 수 있습니다. Ubuntu의 Alt-Tab에서 이를 반대로 하고 탭을 그룹 해제하는 방법은 다음과 같습니다.

Linux에 Spotify를 설치하는 방법

Linux에 Spotify를 설치하는 방법

Spotify는 가장 큰 음악 스트리밍 서비스 중 하나입니다. 모바일(Android 및 iOS) 및 데스크톱(Mac 및 Windows) 장치 모두에 대한 기본 클라이언트가 있습니다.

Linux를 시작하는 9가지 기본 명령

Linux를 시작하는 9가지 기본 명령

Linux 사용법 가이드는 터미널에서 특정 작업을 수행할 것으로 예상하는 경우가 많으며, 이는 처음에는 겁이 날 수 있습니다. 그러나 걱정하지 마십시오. 이 Linux 명령 치트 시트는 터미널을 열고 몇 가지 유용한 명령을 실행하는 과정을 다룹니다.

2020년 Ubuntu 20.04를 위한 15가지 최고의 테마

2020년 Ubuntu 20.04를 위한 15가지 최고의 테마

Ubuntu 20.04s의 새로운 GNOME 데스크탑에 새로 업데이트된 많은 테마를 설치할 준비가 되었습니다. 2020년 최고의 우분투 테마 목록은 다음과 같습니다.