Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

expect: spawn + $argv problem

0 views
Skip to first unread message

Fedor Zhigaltsov

unread,
May 30, 2006, 2:39:25 AM5/30/06
to

Пишу скрипт для автологина и последующего выполнения команд через ssh.
Сами команды передаю как аргументы скрипту:
$ ./script 'ls -l && echo aga'

В скрипте такой вызов spawn:
spawn ssh user@host $argv

При запуске скрипта получаю:

spawn ssh user@host {ls -l && echo aga}
ent...@69.9.171.106's password:
stdin: is not a tty
bash: line 1: {ls: command not found
connection closed

Как избавиться от фигурных скобок в вызове ssh?


Скрипт:

#!/usr/bin/expect --
# -*- tcl -*-
spawn ssh user@host $argv
expect {
-re "assword: ?$" {
send "mypassword\r"
exp_continue
}
eof {
send_user "connection closed\n"
exit
}
}

Kirill Frolov

unread,
May 30, 2006, 3:58:04 AM5/30/06
to
On Tue, 30 May 2006 06:39:25 +0000 (UTC), Fedor Zhigaltsov wrote:

> stdin: is not a tty

ssh -t

> bash: line 1: {ls: command not found

> Как избавиться от фигурных скобок в вызове ssh?

> spawn ssh user@host $argv

eval spawn ssh user@host $argv

0 new messages