Adicionando 2 variáveis ao arquivo no script de espera

0

Estou usando um script de espera & Eu sou incapaz de definir 2 variável para o arquivo de saída, eu só quero nomear o arquivo conforme necessário.

#!/usr/bin/env expect
set file [lindex $argv 0];
set date [exec date "+%d-%B-%Y"]
spawn sh -c "ssh -o StrictHostKeyChecking=no hostname < ./script.sh > /root/scp_output_$file_$date.txt"

Saída exigida

/root/scp_output_A_21-September-2017.txt
    
por user3561766 21.09.2017 / 09:20

1 resposta

2

O erro que vejo para algum código de teste é

can't read "file_": no such variable
    while executing

que indica que o TCL está procurando por uma variável file_ que não existe. Isso pode ser remediado observando onde a variável é e termina; O TCL usa a mesma sintaxe do Perl para isso, {} em torno do nome da variável.

spawn sh -c "ssh -o StrictHostKeyChecking=no hostname < ./script.sh > /root/scp_output_${file}_${date}.txt"
    
por 21.09.2017 / 14:54