Bash를 사용하여 파일에 텍스트를 추가하는 방법

Suraj Joshi 2023년1월30일
  1. 리디렉션 연산자>>를 사용하여 파일에 텍스트 추가
  2. tee 명령을 사용하여 파일에 텍스트 추가
Bash를 사용하여 파일에 텍스트를 추가하는 방법

리디렉션 (>>) 연산자와tee 명령을 사용하여 파일에 텍스트를 추가 할 수 있습니다.

파일에 텍스트를 추가 할 수있는 충분한 권한이 있는지 확인해야합니다. 권한이 충분하지 않으면 권한 거부 오류가 발생할 수 있습니다.

리디렉션 연산자>>를 사용하여 파일에 텍스트 추가

리디렉션 연산자>>bash 명령에서 출력을 가져 와서 다른 파일에 추가합니다. 텍스트를 표준 출력으로 인쇄하는 방법에는 여러 가지가 있지만echoprintf가 가장 많이 사용되는 명령입니다.

파일에 텍스트를 추가하려면 출력 명령 중 하나를 사용하여 텍스트를 인쇄하는 명령을 작성한 다음>>연산자를 명령에 추가 한 다음 텍스트를 추가해야하는 파일 이름을 추가합니다.

echo "Hello World" >> abc.txt

그러면abc.txt 파일 끝에Hello World라는 텍스트가 추가됩니다.

파일이 현재 작업 디렉토리에없는 경우 명령은 빈 파일을 만들고 파일에 Hello World텍스트를 씁니다.

\n과 같은 이스케이프 시퀀스 문자를 해석하기 위해echo 명령과 함께-e 옵션을 사용합니다.

echo -e "Hello World! \nThis is DelftStack" >> abc.txt

이것은 텍스트를 추가합니다

Hello World!
This is DelftStack

abc.txt 파일에.

텍스트가 추가되었는지 여부를 확인하기 위해cat 명령을 사용하여 파일 내용을 볼 수 있습니다.

cat abc.txt

출력:

Hello World! 
This is DelftStack

텍스트가 추가 된 경우 파일 끝에 텍스트가 표시됩니다.

더 많은 형식의 텍스트를 원하면printf 명령을 사용하여 더 많은 형식의 출력을 생성 할 수 있습니다.

printf "The path of shell interpreter is %s\n" $SHELL >> abc.txt

abc.txt 파일에The path of shell interpreter is /bin/bash라는 텍스트를 추가합니다.

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

tee는 표준 입력에서 입력을 받아 하나 이상의 파일과 표준 출력에 동시에 쓰는 명령 줄 유틸리티입니다.

기본적으로tee 명령은 파일의 내용을 덮어 씁니다. 파일 끝에 텍스트를 추가하려면 명령과 함께-a 또는--append 옵션을 사용합니다.

echo "Hello World!" | tee -a abc.txt

출력:

Hello World!

abc.txt 파일에Hello World!를 추가하고 터미널의 표준 출력에 텍스트를 씁니다.

파일에 텍스트를 추가하는 동안 권한 거부 오류가 발생하면tee 명령 앞에sudo 키워드를 추가 할 수 있습니다.

echo "Hello World!" | sudo tee -a abc.txt

표준 출력을보고 싶지 않다면 출력을/dev/null로 리디렉션 할 수 있습니다.

 echo "Hello World!"  | tee -a abc.txt >/dev/null

tee 명령을 사용하는 한 가지 장점은tee 명령을 사용하여 동시에 여러 파일에 텍스트를 쓸 수 있다는 것입니다. 여러 파일에 텍스트를 쓰려면 공백으로 구분 된 모든 파일을 나열하면됩니다.

echo "Hello World!" | sudo tee -a abc.txt backup.txt

abc.txtbackup.txt파일에 동시에 텍스트를 추가합니다.

작가: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn