현재 파일에 정의된 변수로 외부 파일을 에코하여 호출합니다.

현재 파일에 정의된 변수로 외부 파일을 에코하여 호출합니다.

내 Linux 컴퓨터에서 - 다음을 수행합니다.

script.sh라는 스크립트를 만듭니다.

 #!/bin/bash    
 variable=`df -hP`    
 echo < my_file.txt

그런 다음 my_file.txt라는 외부 파일을 만듭니다.

The disk usage is: $variable

script.sh를 실행하면 아무 것도 인쇄되지 않습니다.

예상되는 출력은 다음과 같습니다.

The disk usage is: Filesystem      Size  Used Avail Use% Mounted on
udev            3.2G     0  3.2G   0% /dev
tmpfs           651M  9.2M  642M   2% /run
/dev/sda1       218G  9.5G  197G   5% /
tmpfs           3.2G   62M  3.2G   2% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.2G     0  3.2G   0% /sys/fs/cgroup
/dev/sda4       266G  1.1G  252G   1% /home
/dev/sda2       923M  137M  723M  16% /boot
tc              308G  158G  151G  52% /media/sf_tc
tmpfs           651M   52K  651M   1% /run/user/1000

답변1

export변수를 사용하고 다음을 사용할 수 있습니다 envsubst.

#!/bin/bash
export variable=$(df -hP)
envsubst '$variable' < my_file.txt

양식을 사용하는 경우 envsubst < my_file.txt내보낸 모든 변수가 대체됩니다. 교체할 모든 변수를 명시적으로 나열하는 것이 더 안전합니다.

envsubst '$var1 $var2 $var3' < file

관련된:

관련 정보