Добавление 2 переменных в файл в сценарии ожидания

Я использую сценарий ожидания, и я не могу установить 2 переменные для выходного файла, я просто хочу назвать файл соответствующим образом.

#!/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"

Требуемый вывод

/root/scp_output_A_21-September-2017.txt
0
21.09.2017, 10:20
1 ответ

Ошибка, которую я вижу для некоторого тестового кода,

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

, что указывает на то, что TCL ищет несуществующую file_переменную. Это можно исправить, отметив, где заканчиваются переменные существа и; TCL использует для этого тот же синтаксис, что и Perl, {}вокруг имени переменной.

spawn sh -c "ssh -o StrictHostKeyChecking=no hostname <./script.sh > /root/scp_output_${file}_${date}.txt"
2
28.01.2020, 02:33

Теги

Похожие вопросы