Bash에서 파일에 쓰기

Faaiq Bilal 2023년6월20일
Bash에서 파일에 쓰기

이 튜토리얼에서는 bash에서 파일을 작성하는 다양한 접근 방식을 살펴볼 것입니다. 요구 사항에 따라 파일을 추가하거나 덮어쓸 수 있습니다. 우리가 어떻게 할 수 있는지 봅시다.

Bash에서 파일을 쓰거나 덮어쓰는 다양한 방법

파일에 출력을 덮어쓰고 추가하는 >>>와 같은 여러 연산자가 표시됩니다. 또한 단일 및 다중 파일을 덮어쓰고 추가하는 tee 명령을 살펴보겠습니다.

> 연산자를 사용하여 파일 덮어쓰기

> 연산자는 파일을 덮어쓰는 데 사용됩니다. 예를 들어 다음 코드는 파일을 덮어쓰는 데 사용됩니다.

echo "Overwriting in the file" > test.txt

위의 명령은 test.txt 파일이 종료되면 덮어씁니다. 그렇지 않으면 새 항목을 만듭니다. echo는 텍스트 형식을 지원하지 않기 때문에 일반적으로 사용되지 않습니다.

형식이 지정된 텍스트에는 echo 대신 printf를 사용합니다. 다음 예는 printf를 사용하여 파일을 덮어쓰는 것을 보여줍니다.

printf "overwriting using the printf \n now in next line" > test.txt

위의 명령은 문자열의 형식을 지정하고 printf 뒤에 새 줄을 추가합니다.

>> 연산자를 사용하여 파일에 쓰기

>> 연산자는 파일 끝에 내용을 추가하는 데 사용됩니다. 예를 들어, 다음 명령은 test.txt라는 파일에 데이터를 추가하는 데 사용됩니다.

echo "Append in the file" >> test.txt

vim 명령을 사용하여 파일에 쓰기

vim 편집기는 파일 내용을 편집하는 데에도 사용됩니다. 예를 들어, 다음 코드는 vim 편집기에서 test.sh 파일을 엽니다.

sudo vim test.sh

vim 편집기를 연 후 다음 스크립트를 추가하여 파일 쓰기 작업을 수행합니다.

#! /bin/bash
echo "Enter Student Name"
read yourName
echo $yourName > test.txt
echo "Enter age"
read age
echo $age >> test.txt
cat test.txt

코드를 추가한 후 ESC를 누르고 w를 입력하여 파일을 닫습니다. 이제 bash test.sh를 사용하여 파일을 실행하십시오.

위의 스크립트는 파일 쓰기에 대한 두 가지 접근 방식을 보여줍니다. 4행에서는 파일을 덮어쓰는 > 연산자를 사용했습니다. 라인 7에서 이전 내용을 덮어쓰지 않고 새 라인에 문자열을 추가하는 >> 연산자를 사용합니다.

tee 명령을 사용하여 파일에 쓰기

파일과 콘솔에 쓰기 작업을 동시에 수행하려면 tee 명령을 사용할 수 있습니다. 동시에 입력을 받아 파일과 콘솔에 문자열을 씁니다.

tee 명령을 사용하면 콘솔에서 파일에 기록되는 내용을 볼 수 있습니다. tee 명령은 파일을 덮어쓰고 추가하는 데에도 사용됩니다.

tee 명령을 사용하여 파일 덮어쓰기

다음 명령은 tee 명령을 사용하여 덮어쓰기에 사용됩니다.

echo "Testing the Tee Command" | tee test.txt

위의 명령은 파이프(|)에서 문자열 입력을 가져와 콘솔과 파일에 동시에 씁니다.

tee 명령을 사용하여 파일에 추가

-a 플래그는 파일을 추가하기 위해 tee 명령과 함께 사용됩니다. 예를 들어, 다음 코드는 Testing the Tee Commandtest.txt 파일에 추가합니다.

echo "Testing the Tee Command" | tee -a test.txt

때로는 여러 파일에 동시에 내용을 작성해야 할 수도 있습니다. 단일 공백으로 구분된 모든 파일의 이름을 지정하여 이를 달성하기 위해 tee 명령을 사용할 수 있습니다.

다음 bash 명령은 콘텐츠를 여러 파일에 쓰는 방법을 보여줍니다.

echo "Writing text to the multiple files" | tee test1.txt test2.txt test3.txt

위의 명령은 콘솔에 입력 문자열과 세 개의 텍스트 파일을 동시에 씁니다.

관련 문장 - Bash File