我有以下bash脚本 test.sh
#!/bin/bash
ssh -o "StrictHostKeyChecking no" user@$1
#do some stuff
exit
Run Code Online (Sandbox Code Playgroud)
但是,如果我运行此脚本,./test.sh我需要输入ctrl + d以退出ssh会话,看起来好像exit命令没有按照我的意图运行.
有什么办法可以退出这个从这个bash脚本创建的ssh会话吗?
Bas*_*tch 16
您可能想要编写此处的文档
#!/bin/bash
ssh -o "StrictHostKeyChecking no" user@$1 << ENDHERE
here do some remote stuff
also here
exit
ENDHERE
Run Code Online (Sandbox Code Playgroud)
如果您编码<<-ENDHERE初始空格或此处文档的每一行中的选项卡都被禁止.$foo除非你编码<<\ENDHERE,否则参数(例如)被替换,并且ENDHERE实际上可以是任何单词,通常是大写字母.
阅读Advanced Bash Scripting指南(确实存在一些不完善之处)