我的计划是编写一个脚本来调试远程 Web 服务器。
由于调试端口被防火墙阻止,我需要通过 ssh 将远程端口转发到本地计算机。这部分工作正常。
在调试模式下运行服务器的命令会阻塞终端。因此,当我按 CTRL C 时,服务器应该停止。但是,当我完成调试后,我希望服务器以正常模式再次启动。所以我添加了一个 trap 命令。
这是我目前的方法:
ssh -tt my.server -L 8001:localhost:8000 <<'ENDSSH'
trap 'start server as service in normal mode' 2
stop server
start server in debug mode
ENDSSH
Run Code Online (Sandbox Code Playgroud)
但是,当我按 CTRL C 时,ssh 连接将终止,并且陷阱内的命令不会执行。
在这里完成脚本新手。需要帮忙。