Re: [問題] 用expect, ssh 在兩server傳值

作者: drag (京都念慈庵,賈詡念費翔)   2013-01-25 16:52:42
※ 引述《imio24 (imio)》之銘言:
: 感謝感謝
: 再問一下
: 如果我想要在 expect -c '...'這一行用 awk '{ print $(0) }' 如 send "uname -a | cut -d " " -f1 | awk '{ print $(0) }'"
: awk 後面的 ' strong quote 要如何表示?
: : #!/bin/sh
: : export ip=$1
: : export usr=$2
: : export passwd=$3
: : export rport=$4
: : export a=""
: : export a=`expect -c 'spawn ssh -p '$rport' '$usr'@'$ip'; expect password; \
: : send "'$passwd'\n" ; expect "* #" ; send "uname -a\n" ; send "exit\n" ; \
: : interact'|grep "Linux "`
: : echo "B server version: " $a
那....把最後一行改成下面兩行
echo $a|cut -d " " -f1 > temp.log
awk '{ print $(0) }' temp.log
應該可以吧?
作者: imio24 (imio)   2013-01-26 17:02:00
其實我是想把全部寫一起但 awk '..'包expect -c '裡會有unexpected '{ error
作者: drag (京都念慈庵,賈詡念費翔)   2013-01-28 10:04:00
這邊我不懂了,也許 用 \' 會有用?另,請問已經cut完畢,為何還要awk '{print $(0)}' ??
作者: imio24 (imio)   2013-01-28 12:38:00
我也是試過用\'也不行 其實我需把他全換成uppercase雖然用tr 解決了,不過還是想知道遇到'要怎麼用

Links booklink

Contact Us: admin [ a t ] ucptt.com