Bash에서는 파일에 텍스트를 추가하는 여러 가지 방법이 있습니다. 이 기사에서는 그 중 몇 가지를 설명합니다.
파일에 텍스트를 추가하려면 파일에 쓰기 권한이 있어야 합니다. 그렇지 않으면 권한 거부 오류가 표시됩니다.
리디렉션 연산자(>)를 사용하여 파일에 추가
리디렉션을 사용하면 명령에서 출력을 캡처하여 입력으로 다른 명령이나 파일로 보낼 수 있습니다. >> 리디렉션 연산자는 출력을 지정된 파일에 추가합니다.
텍스트를 표준 출력으로 인쇄하고 파일로 리디렉션하는 데 사용할 수 있는 여러 가지 명령이 있으며 에코 및 인쇄가 가장 많이 사용됩니다.
파일에 텍스트를 추가하려면 리디렉션 연산자 뒤에 파일 이름을 지정합니다.
echo "this is a new line" >> file.txt
-e 옵션과 함께 사용할 경우 에코 명령은 새 줄 \n과 같은 백슬래시 이스케이프 문자를 해석합니다.
echo -e "this is a new line \nthis is another new line" >> file.txt
더 복잡한 출력을 생성하려면 출력 형식을 지정할 수 있는 printf 명령을 사용하십시오.
printf "Hello, I'm %s.\n" $USER >> file.txt
파일에 텍스트를 추가하는 또 다른 방법은 여기 문서(Ederoc)를 사용하는 것입니다. 여러 줄의 입력을 명령에 전달할 수 있는 리디렉션 유형입니다.
예를 들어 내용을 cat 명령에 전달하여 파일에 추가할 수 있습니다.
cat << EOF >> file.txt
The current working directory is: $PWD
You are logged in as: $(whoami)
EOF
명령의 출력을 파일에 추가할 수 있습니다. 다음은 날짜 명령의 예입니다.
date +"Year: %Y, Month: %m, Day: %d" >> file.txt
리디렉션을 사용하여 파일에 추가할 때 > 연산자를 사용하여 중요한 기존 파일을 덮어쓰지 않도록 주의하십시오.
tee 명령을 사용하여 파일에 추가
tee는 표준 입력을 읽고 동시에 표준 출력과 하나 이상의 파일에 쓰는 Linux의 명령줄 유틸리티입니다.
기본적으로 tee 명령은 지정된 파일을 덮어씁니다. 출력을 파일에 추가하려면 -a(--첨부) 옵션을 사용하여 tee를 사용하십시오.
echo "this is a new line" | tee -a file.txt
티를 표준 출력에 쓰지 않으려면 /dev/null로 리디렉션합니다.
echo "this is a new line" | tee -a file.txt >/dev/null
> 연산자보다 tee 명령어를 사용하면 tee를 사용하면 여러 파일에 한 번에 텍스트를 추가하고 sudo와 함께 다른 사용자가 소유한 파일에 쓸 수 있다는 장점이 있습니다.
쓰기 권한이 없는 파일에 텍스트를 추가하려면 아래와 같이 티 앞에 sudo를 추가합니다.
echo "this is a new line" | sudo tee -a file.txt
tee는 에코 명령의 출력을 수신하고 sudo 권한을 상승시키며 파일에 씁니다.
텍스트를 둘 이상의 파일에 추가하려면 tee 명령에 인수로 파일을 지정합니다.
echo "this is a new line" | tee -a file1.txt file2.txt file3.txt
Linux에서 텍스트를 파일에 추가하려면 > 리디렉션 연산자 또는 tee 명령을 사용하십시오.
'SW > 리눅스' 카테고리의 다른 글
Linux : CentOS 8 : CouchDB 설치 방법, 예제, 명령어 (0) | 2022.05.26 |
---|---|
Linux : 기초 명령어, 예제, 사용 방법 (0) | 2022.05.25 |
Linux : 파일의 권한을 재귀 변환 방법, 예제, 명령어 (0) | 2022.05.23 |
Linux : CentOS 8 : Yarn 설치 방법, 예제, 명령어 (0) | 2022.05.22 |
Linux : Debian 10 : Jenkins 설치 방법, 예제, 명령어 (0) | 2022.05.21 |