![Variável definida no arquivo atual e ecoa um arquivo externo nele, que chama a variável](https://rvso.com/image/164707/Vari%C3%A1vel%20definida%20no%20arquivo%20atual%20e%20ecoa%20um%20arquivo%20externo%20nele%2C%20que%20chama%20a%20vari%C3%A1vel.png)
Na minha máquina Linux - faço o seguinte:
Crie um script chamado script.sh
#!/bin/bash
variable=`df -hP`
echo < my_file.txt
Então eu crio um arquivo externo chamado my_file.txt
The disk usage is: $variable
Quando executo o script.sh não recebo nada impresso.
A saída esperada é:
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
Responder1
Você poderia export
sua variável e usar envsubst
:
#!/bin/bash
export variable=$(df -hP)
envsubst '$variable' < my_file.txt
Se você usar o formulário envsubst < my_file.txt
, todas as variáveis exportadas serão substituídas. É mais seguro listar explicitamente todas as variáveis que você deseja substituir, como
envsubst '$var1 $var2 $var3' < file
Relacionado: