몇 가지 단계를 자동화하는 스크립트를 작성 중이며 미리 정의된 위치와 텍스트가 포함된 새 구성 파일을 만들어야 합니다.
파일을 생성할 수는 있는데 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.conf
cat
여기 문서에 쉘 변수(또는 쉘 변수처럼 보이는 것)가 있는 경우아니요해당 값으로 바꾸려면 첫 번째 값을 작은따옴표로 묶어야 합니다 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
이렇게 하면 파일이 생성되고 필요한 내용으로 채워집니다.