Я хотел бы получить помощь для решения проблемы с ожидаемым сценарием.Ожидать изменения переменной окружения скрипта
, когда я использую команду env на моем терминале linux, я вижу $INFO_HME
как /app/informatica/etldev/9.1/server
.
Но я не могу использовать $INFO_HME
его в сценарии ожидания и получении ошибки. Мой сценарий показан ниже.
Предполагаю, $INFO_HME
будет заменен как /app/informatica/etldev/9.1/server
в команде lcd
.
#!/usr/bin/expect
spawn /usr/bin/sftp <ID_Here>@<Host_Here>
expect "password:"
send "<Password_Here>\n"
expect "sftp>"
send "lcd $INFO_HME/infa_shared/SrcFiles\n"
expect "sftp>"
send "cd \"/Source/client\"\n"
expect "sftp>"
send "get file.csv\n";
expect "sftp>"
send "quit\n"
Сообщение об ошибке:
sftp> can't read "INFO_HME": no such variable
while executing
"send "lcd $INFA_HOME/infa_shared/SrcFiles\n""
(file "Scr_Webcore_SFTP.sh" line 7)
Глубоко признателен за любую помощь, чтобы решить эту проблему.
Можете ли вы перепроверить эту mistake- согласно вашему посыла сценария «жк $ INFO_HME/infa_shared/SrcFiles \ п», я думаю, правильно переменная должна быть $ INFA_HOME. Это переменная informatica env и должна быть настроена, если у вас есть информационная система. Переменная, которую вы видите, вероятно, имеет некоторую ошибку. – Koushik
Я проверил его. С этим нет никаких проблем. Проблема решена с использованием метода ниже: – aks