gpt4 book ai didi

linux - 关闭期望脚本而不关闭ssh中的 session

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:33:13 28 4
gpt4 key购买 nike

我有一个ssh脚本要登录到我的服务器

#!/usr/bin/expect -f

set timeout -1

spawn ssh rootacc@$ip

// logic to login

interact

expect脚本仍在运行。
我需要在“logic to login”完成后关闭expect脚本(kill),而不关闭ssh会话。
如果我用“Exchange”替换“交互”,会话将被关闭,它将返回到我的本地文件系统。
我能做这个吗?

最佳答案

下面是使用sexpect的示例。仅供参考。

[STEP 101] # export SEXPECT_SOCKFILE=~/tmp/sexpect-ssh.sock
[STEP 102] # sexpect spawn ssh -D 8888 -N root@127.0.0.1
[STEP 103] # sexpect expect -nocase password:
root@127.0.0.1's password: <-- No <NEWLINE> here
[STEP 104] # sexpect send -enter 'password'
[STEP 105] # pgrep -af 8888
28089 sexpect spawn ssh -D 8888 -N root@127.0.0.1
28090 ssh -D 8888 -N root@127.0.0.1
[STEP 106] # netstat -anp | grep -w 8888
tcp 0 0 127.0.0.1:8888 0.0.0.0:* LISTEN 28090/ssh
[STEP 107] #

关于linux - 关闭期望脚本而不关闭ssh中的 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54059480/

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