다음을 포함하는 변수 v="c d e f g"
와 파일이 있다고 가정해 보겠습니다.
line1
$v
line3
여기 이 문서에서 하는 것처럼 2번째 줄의 변수 내용을 사용하여 이 파일을 인쇄하는 bash 스크립트를 얻으려면 어떻게 해야 합니까?
#!/bin/bash
v="c d e f g"
cat << EOF
line1
$v
line3
EOF
산출:
line1
c d e f g
line3
답변1
envsubst
파일을 구문 분석하고 환경 변수( envsubst
의 환경에 있음)를 해당 변수로 바꾸는 데 사용됩니다 .
$ v='c d e f g'
$ v=$v envsubst <file
line1
c d e f g
line3
또는 먼저 내보내세요 v
.
$ export v
$ envsubst <file
line1
c d e f g
line3
내 시스템에서는 envsubst
패키지의 일부로 배포됩니다 gettext
.