Linux 에서 파일이 비어 있는지 확인하는 방법

LinuxBeginner
지금 연습하기

소개

이 랩에서는 다양한 명령줄 도구를 사용하여 Linux 에서 파일이 비어 있는지 확인하는 방법을 배우게 됩니다. 파일 크기를 확인하기 위해 test -s 명령을 사용하고, wc -c 명령을 사용하여 파일의 바이트 수를 계산하며, 마지막으로 cat 명령을 사용하여 파일의 내용을 직접 검사하는 세 가지 일반적인 방법을 살펴볼 것입니다. 실습 예제를 통해 각 방법이 어떻게 작동하는지, 그리고 파일에 데이터가 있는지 확인하기 위해 출력을 어떻게 해석하는지 이해하게 될 것입니다.

test -s 로 파일 크기 확인

이 단계에서는 -s 옵션과 함께 test 명령을 사용하여 파일이 존재하고 비어 있지 않은지 확인하는 방법을 배우게 됩니다. test 명령은 조건식을 평가하는 데 사용되는 내장 셸 명령입니다. 셸 스크립트에서 결정을 내리는 데 자주 사용됩니다.

test와 함께 사용되는 -s 옵션은 파일이 존재하고 크기가 0 보다 큰지 (즉, 비어 있지 않은지) 확인합니다.

먼저, ~/project 디렉토리에 빈 파일과 비어 있지 않은 파일을 만들어 보겠습니다.

터미널이 아직 열려 있지 않다면 엽니다. 기본적으로 ~/project 디렉토리에 있어야 합니다.

empty_file.txt라는 빈 파일을 만듭니다.

touch empty_file.txt

이제 non_empty_file.txt라는 파일을 만들고 echo 명령과 리디렉션 연산자 >를 사용하여 텍스트를 추가합니다. > 연산자는 명령의 출력을 파일로 리디렉션합니다. 파일이 존재하지 않으면 생성됩니다. 파일이 존재하면 내용이 덮어쓰여집니다.

echo "This file has content." > non_empty_file.txt

이제 test -s 명령을 사용하여 이러한 파일을 확인해 보겠습니다. test 명령은 성공 시 출력을 생성하지 않습니다. 종료 상태를 사용하여 성공 또는 실패를 알립니다. 종료 상태가 0이면 성공 (조건이 참) 을 의미하고, 0 이 아닌 종료 상태는 실패 (조건이 거짓) 를 의미합니다.

특수 변수 $?를 사용하여 이전 명령의 종료 상태를 확인할 수 있습니다.

빈 파일을 확인합니다.

test -s empty_file.txt
echo $?

empty_file.txt에 대해 조건 (파일이 존재하고 비어 있지 않음) 이 거짓임을 나타내는 출력 1을 볼 수 있습니다.

이제 비어 있지 않은 파일을 확인합니다.

test -s non_empty_file.txt
echo $?

non_empty_file.txt에 대해 조건이 참임을 나타내는 출력 0을 볼 수 있습니다.

이것은 셸 스크립트에서 파일 속성을 확인하는 기본적인 방법입니다. 파일을 처리하기 전에 파일에 내용이 있는지 확인하는 데 사용할 수 있습니다.

계속을 클릭하여 진행합니다.

wc -c 를 사용하여 파일 바이트 수 계산

이 단계에서는 -c 옵션과 함께 wc 명령을 사용하여 파일의 바이트 수를 계산하는 방법을 배우게 됩니다. wc 명령은 각 파일에 대한 줄 바꿈, 단어 및 바이트 수를 출력하는 유틸리티입니다.

-c 옵션은 wc에게 바이트만 계산하도록 지시합니다.

이전 단계에서 생성한 파일인 empty_file.txtnon_empty_file.txt를 사용해 보겠습니다.

먼저, empty_file.txt의 바이트 수를 계산합니다. ~/project 디렉토리에 있는지 확인하십시오.

wc -c empty_file.txt

다음과 유사한 출력을 볼 수 있습니다.

0 empty_file.txt

이는 empty_file.txt가 0 바이트를 가지고 있음을 보여줍니다. 이는 빈 파일이기 때문에 당연합니다.

이제 non_empty_file.txt의 바이트 수를 계산합니다.

wc -c non_empty_file.txt

다음과 유사한 출력을 볼 수 있습니다.

23 non_empty_file.txt

숫자 23은 "This file has content." 파일의 바이트 수를 나타내며, echo에 의해 추가된 줄 바꿈 문자가 뒤따릅니다. 각 문자는 일반적으로 1 바이트를 차지합니다.

wc 명령은 파일 크기에 대한 정보를 빠르게 얻는 데 매우 유용합니다. 옵션 없이 wc를 사용하여 줄, 단어 및 바이트 수를 얻을 수도 있습니다. wc non_empty_file.txt를 실행하여 차이점을 확인해 보십시오.

다음 단계로 이동하려면 계속을 클릭하십시오.

cat 명령어로 파일 내용 보기

이 단계에서는 cat 명령을 사용하여 파일의 내용을 보는 방법을 배우게 됩니다. cat 명령은 "concatenate(연결하다)"의 줄임말이며, 주로 파일의 내용을 표시하는 데 사용됩니다.

이전 단계에서 생성한 파일인 empty_file.txtnon_empty_file.txt를 사용해 보겠습니다. ~/project 디렉토리에 있는지 확인하십시오.

먼저, empty_file.txt의 내용을 보려고 시도합니다.

cat empty_file.txt

empty_file.txt가 비어 있으므로 cat 명령은 어떤 출력도 표시하지 않습니다.

이제 non_empty_file.txt의 내용을 봅니다.

cat non_empty_file.txt

이전 단계에서 추가한 내용을 볼 수 있습니다.

This file has content.

cat 명령은 터미널에서 파일의 전체 내용을 직접 표시하는 간단하고 빠른 방법입니다. 매우 큰 파일에서 cat을 사용할 때는 주의해야 합니다. 모든 내용을 화면에 출력하므로 압도적일 수 있습니다. 큰 파일의 경우, 내용을 페이지별로 볼 수 있는 less 또는 more와 같은 명령이 더 적합합니다.

cat을 사용하여 여러 파일의 내용을 결합하여 표시할 수도 있습니다. 예를 들어, file1.txtfile2.txt가 있는 경우, cat file1.txt file2.txtfile1.txt의 내용 다음에 file2.txt의 내용을 표시합니다.

이 랩을 완료하려면 계속을 클릭하십시오.

요약

이 랩에서는 test -s 명령을 사용하여 Linux 에서 파일이 비어 있는지 확인하는 방법을 배웠습니다. 이 명령은 파일이 존재하고 크기가 0 보다 큰지 확인하며, 참 (비어 있지 않음) 의 경우 종료 상태 0 을 반환하고 거짓 (비어 있거나 존재하지 않음) 의 경우 1 을 반환합니다. test -s를 사용하여 빈 파일과 비어 있지 않은 파일을 만들고 상태를 확인하고 $?로 종료 상태를 확인하는 연습을 했습니다.