VIM을 사용하여 셸 스크립트에서 새 파일 만들기

VIM을 사용하여 셸 스크립트에서 새 파일 만들기

몇 가지 단계를 자동화하는 스크립트를 작성 중이며 미리 정의된 위치와 텍스트가 포함된 새 구성 파일을 만들어야 합니다.

파일을 만들 수 있지만 VIM을 사용하여 텍스트를 입력하고 파일을 자동으로 저장하는 방법을 잘 모르겠습니다.

:

/etc/httpd/conf.d/cgi-enabled.conf다음 텍스트를 사용하여 구성 파일을 만듭니다.

<Directory "/var/www/html/cgi-enabled">
    Options +ExecCGI
    AddHandler cgi-script .cgi .pl
</Directory>

저장하면 다음 구성 파일로 넘어갈 수 있습니다. 어떤 제안?

답변1

시작할 필요가 없습니다 vim. 여기 문서를 사용하십시오.

cat >/etc/httpd/conf.d/cgi-enabled.conf <<END_CONF
<Directory "/var/www/html/cgi-enabled">
    Options +ExecCGI
    AddHandler cgi-script .cgi .pl
</Directory>
END_CONF

<<END_CONF와 마지막 구분 기호 사이의 텍스트는 에 의한 리디렉션을 통해 END_CONF에 저장됩니다 . 구분 기호의 선택은 임의적이지만 일반적으로 대문자를 사용합니다./etc/httpd/conf.d/cgi-enabled.confcat

여기 문서에 쉘 변수(또는 쉘 변수처럼 보이는 것)가 있고~하지 않다이를 해당 값으로 바꾸려면 첫 번째 부분을 작은따옴표로 묶어야 합니다 END_CONF.

cat >/etc/httpd/conf.d/cgi-enabled.conf <<'END_CONF'
<Directory "/var/www/html/cgi-enabled">
    Options +ExecCGI
    AddHandler cgi-script .cgi .pl
</Directory>

<!-- $HOME will not be expanded here -->
END_CONF

답변2

이것이 쉘 스크립트에서 나온 것이라면 vim을 모두 사용하지 않고 대신 echo를 사용하는 것이 좋습니다. 즉, echo "sample text" > file.cfg이렇게 하면 파일이 생성되고 필요한 내용으로 채워집니다.

관련 정보