Bash에서 파일에 쓰는 방법

How Write File Bash



bash 스크립팅으로 작업하는 동안 수행하는 필수 작업 중 하나는 파일을 읽고 쓰는 것입니다. 이 가이드에서는 bash에서 파일을 읽는 방법과 파일을 편집하는 방법에 중점을 둘 것입니다.

bash에서 파일을 읽고 쓰는 방법에는 여러 가지가 있습니다. 가장 간단한 방법은 > 및 >> 연산자를 사용하는 것입니다.







  • > 연산자는 기존 데이터를 덮어씁니다.
  • >> 연산자는 데이터를 추가합니다

리디렉션 연산자를 사용하는 일반적인 형식은 다음과 같습니다.



데이터 > 파일 이름
데이터 >> 파일 이름

예를 들어 파일 프로시저에 쓰기를 이해합시다.



리디렉션 연산자를 사용하여 파일을 작성하는 방법

위에서 논의한 바와 같이 파일에 쓰는 간단하고 직접적인 접근 방식은 리디렉션 연산자를 사용하는 것입니다. 예를 들어 이미 존재하는 파일의 텍스트를 변경하려면 먼저 다음 이름으로 텍스트 파일을 만듭니다. 테스트 파일.txt 그리고 그 안에 무엇이든 쓰십시오:





텍스트 파일을 저장합니다.



터미널에 아래에 언급된 명령을 입력합니다.

$ echo 파일의 기존 텍스트 덮어쓰기 > testfile.txt

과도하게 짜는 것은 위험할 수 있습니다. 따라서 noclobber를 활성화하는 것이 좋습니다. noclobber를 설정하면 기존 파일에 대한 덮어쓰기가 차단됩니다.

$ set –o noclobber
$ echo 파일의 기존 텍스트 덮어쓰기 > testfile.txt

그러나 noclobber를 우회하려면 다음을 사용하십시오. > | 대신 연산자 > :

$ echo 파일의 기존 텍스트 덮어쓰기 >| 테스트 파일.txt

또는 단순히 noclobber를 비활성화할 수 있습니다.

$ set + 또는 noclobber

그러나 이 명령은 모든 파일에서 보호 기능을 제거합니다.

위의 출력은 기존 텍스트를 덮어썼음을 나타냅니다. 자, 이제 사용해보자 >> 운영자:

$ echo 기존 텍스트 파일에 텍스트 추가 >> testfile.txt

던졌다 텍스트를 사용하여 서식을 지정할 수 없으므로 항상 사용하기에 이상적인 것은 아닙니다. 따라서 echo 대신 printf를 사용하여 다음 명령에 표시된 대로 텍스트 서식을 지정합니다.

$ printf 환영합니다 이것은 새로운 텍스트 파일입니다. > newtestfile.txt

bash 스크립트 예제로 개념을 이해합시다. 터미널에 vim을 입력하여 Vim을 엽니다. 장치에 Vim 편집기가 없으면 다음을 사용하여 설치하십시오.

$ sudo apt 설치 vim

스크립트를 입력합니다.

#! /bin/bash
echo 당신의 이름을 입력하십시오
이름 읽기
echo $name > data_dir.txt
echo 나이를 입력하세요
나이를 읽다
에코 $ 나이 >> data_dir.txt
고양이 data_dir.txt

NS 고양이 명령은 파일을 만들고 편집하는 데 사용됩니다. 키를 누른 후 모드를 전환하여 위의 스크립트를 Vim에 저장합니다. ESC 키를 누른 다음 입력 : myscript.sh에서 . 터미널을 열고 코드를 실행합니다.

Heredoc을 사용하여 파일을 작성하는 방법

여러 줄을 작성하려는 경우 가장 쉬운 방법은 Heredoc을 사용하는 것입니다. Heredoc이라고도 하는 here 문서는 다목적 코드 블록입니다. Heredoc의 구문은 다음과 같습니다.

명령<<[-] Delimiter
.
텍스트/명령
.

구분자

구분 기호 대신 모든 문자열을 사용할 수 있으며 - 파일에서 탭 공백을 제거하는 데 사용할 수도 있습니다. 간단한 예를 사용하여 이해해 보겠습니다.

#! /bin/bash

고양이<< TEXTFILE
이것은 텍스트 파일입니다.
이 파일은 heredoc을 사용하여 생성되었습니다.
텍스트 파일

위의 스크립트 cat 명령은 TEXTFILE이라는 이름으로 텍스트 파일을 생성하고 방금 생성된 파일에 텍스트를 작성합니다. 이제 파일을 다음 이름으로 저장하십시오. myscript.sh . 터미널을 실행하고 스크립트를 실행합니다.

Tee 명령을 사용하여 파일을 작성하는 방법

파일을 작성하는 또 다른 방법은 Tee 명령을 사용하는 것입니다. 이 명령을 나타내는 이름은 입력을 받아 파일에 쓰고 동시에 출력을 보여줍니다. 기본적으로 Tee 명령은 기존 데이터를 덮어씁니다.

$ echo 이것은 일부 텍스트입니다 | 티 textfile.txt

추가하려면 –a를 사용하십시오.

$ echo 이것은 다른 텍스트입니다 | 티 -a textfile.txt

여러 줄을 쓰려면 다음을 사용하십시오.

$ echo 여러 파일에 텍스트 추가 | 티 textfile1.txt textfile2.txt textfile3.txt

위의 명령은 존재하지 않는 경우 세 개의 파일을 만들고 각각에 텍스트를 씁니다.

결론

이 가이드는 예제와 함께 bash에서 파일에 쓰기 위한 여러 접근 방식에 초점을 맞추고 있습니다. bash 스크립팅에서 파일을 작성하는 방법은 여러 가지가 있지만 가장 간단한 방법은 리디렉션 연산자 >, >>를 사용하는 것입니다. 여러 줄을 쓰려면 heredoc을 사용할 수 있으며 동일한 데이터를 여러 줄에 쓰고 싶다면 tee 명령이 매우 편리합니다.