gpt4 book ai didi

linux - 如何忽略expect脚本中的反斜杠

转载 作者:太空宇宙 更新时间:2023-11-04 04:13:33 25 4
gpt4 key购买 nike

我创建以下脚本(预计在 ksh 下),

为了将文件 data.txt 从 Linux 机器复制到 Windows 机器

scp 过程将由expect 自动执行,因此密码问题将由expect 回答

问题是expect不能忽略下面一行的“\”反斜杠

   spawn  scp   /tmp/data.txt  ADMIN@192.9.200.17:'c:\'

所以从输出中我看到期望发送不带“\”反斜杠的行

我的语法/脚本需要进行哪些更改,以便 Expect 会忽略反斜杠?

我的脚本

  #!/bin/ksh




PASSORD=secret123


SCP=`cat << EOF
set timeout -1


spawn scp /var/tmp/data.txt ADMIN@192.9.200.17:'c:\'
expect {
")?" { send "yes\r" ; exp_continue }
word: {send $PASSORD\r}
}
expect eof
EOF`



expect -c "$SCP"

.

结果(输出)

 spawn scp /var/tmp/data.txt ADMIN@192.9.200.17:'c:'
gcs@198.202.183.97's password:
scp: c:: Error opening file: The requested operation failed.
Killed by signal 1.

最佳答案

使用 spawn scp/tmp/data.txt ADMIN@192.9.200.17:'c:/' 代替,因为它应该评估为相同的路径。

关于linux - 如何忽略expect脚本中的反斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17924878/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com