Você tem alguns erros no seu código:
- Você tem uma falta de backquote aqui
SUBJECT_1=cat $SUBJECT
'. -
export SUBJECT=echo ${1}
é uma declaração falsa. Deve serexport SUBJECT="${1}"
. - As citações posteriores executam o código dentro delas em um subnível, portanto não imprimirá o conteúdo do arquivo. Se você quiser imprimi-lo, você terá que adicionar esta linha:
echo "${SUBJECT_1}"
.
Depois de corrigir isso, o código funcionará, mas aqui estão algumas dicas que você deve considerar:
- Você deve usar
$(code)
se quiser executar código em um subshell em vez de usar backquotes, pode ler sobre isso em este segmento SO . - Na próxima vez que você estiver preso no código shell, tente este primeiro, ele tem ótimos recursos de depuração para código shell e você pode encontrar a versão da linha de comando.
- Sempre use aspas duplas nas variáveis, isso evita que a variável seja dividida. Você pode ler sobre isso aqui .