셸 스 크 립 트 로 텍스트 파일 생 성

1972 단어 Lang@bashshell
리 눅 스에 서 셸 스 크 립 트 를 쓰 는 중요 한 의 도 는 자동화 이다.만약 우리 가 특정한 내용 을 가 진 텍스트 파일 을 자동 으로 생 성 하 기 를 원한 다 면 어떻게 실현 해 야 합 니까?
나 는 두 가지 방법 을 사용 한 적 이 있 는데, 아래 에 각각 예 를 들 어 설명 한다.더욱 통용 되 기 위해 서 이 두 가지 예 중의 텍스트 내용 은 모두 여러 줄 이다.
echo 명령 사용 하기
echo "Hello, World!
My name is Shengbin." > readme.txt

이런 방법 은 사실 echo 의 출력 을 파일 로 바 꾸 는 것 이다.echo 줄 바 꿈 부 호 를 그대로 유지 하기 때문에 여러 줄 도 지원 합 니 다.
cat 명령 사용
cat > readme.txt << END_TEXT
Hello, World!
My name is Shengbin.
END_TEXT

위의 END_TEXT 는 사용자 정의 식별 자 입 니 다. 이들 의 텍스트 는 파일 의 내용 으로 여 겨 집 니 다. 이 파일 은 cat > readme.txt 의 입력 매개 변수 입 니 다.이것 은 here document 이 라 고 불 리 는 기술 이다.
이 방법 은 스 크 립 트 에 쓰 인 텍스트 내용 의 형식 이 텍스트 파일 에 나타 나 려 는 것 과 똑같다 는 장점 이 있다.이전 방법 은 내용 의 첫 줄 이 반드시 echo 의 같은 줄 에 있어 야 한다 고 요구한다.
작은 따옴표 와 작은 따옴표 를 구분 하 다
셸 에 있 는 작은 따옴표 사이 의 내용 은 변수 전개 와 명령 으로 실 행 됩 니 다. 텍스트 문자열 을 그대로 유지 하려 면 작은 따옴표 (이 작은 따옴표 의 구분 은 다른 언어 에 도 있 습 니 다. 예 를 들 어 PHP, Perl 같은 스 크 립 트 언어) 를 사용 해 야 합 니 다.
예 를 들 면:
echo "Your working directory can be read from the variable $PWD." >> readme.txt

화해시키다
cat > readme.txt << END_TEXT
Your working directory can be read from the variable $PWD.
END_TEXT

생 성 된 readme. txt 내용 은 모두 이와 유사 합 니 다.
Your working directory can be read from the variable /Users/shengbin/Desktop.

그러나 실제 희망의 내용 은:
Your working directory can be read from the variable $PWD.

그래서 정확 한 스 크 립 트 는 이렇게 써 야 합 니 다.
echo 'Your working directory can be read from the variable $PWD.' >> readme.txt

혹시
cat > readme.txt << 'END_TEXT'
Your working directory can be read from the variable $PWD.
END_TEXT

맞 아, 시작 식별 자 를 작은 따옴표 로 싸 면 그 중의 텍스트 는 작은 따옴표 사이 로 여 겨 진다.

좋은 웹페이지 즐겨찾기