根据我的需要,这个需求被分成两个部分:
一、vscode终端远程打开另一台机器上的代码。
通过remote-ssh插件解决。
二、通过一个linux终端向另一个linux终端发送命令
通过linux的ssh命令。首先确保进行通信的两台linux设备都安装了ssh。
在进行控制的终端一侧修改~/.ssh /config文件,添加如下内容:
Host dev //The name of configuration
HostName 192.168.0.1 //ip of remote terminal
User cc //user used for remote terminal
之后你就可以通过如下命令访问远程终端,并将执行结果打印在屏幕上:
ssh dev "ls -l"
三、配置密钥
但是每次执行的时候你都需要输入密码,还是有点麻烦。可以通过配置相应的rsa密钥解决这个问题。输入:
ssh-keygen
之后会询问你在哪里保存密钥、执行密钥需要的密码等等。统一按回车跳过即可。
最后将相应密钥复制到被控制的那台工控机中:
scp id_rsa.pub tony@192.168.0.1:~/.ssh/tmp //Don't replace id_rsa.pub of remote terminal
ssh root@192.168.0.1 -t "cd ~/.ssh/; cat tmp >> authorized_keys; rm -rf tmp"
之后再输入“ssh dev “ls -l””, 会发现无需密码即可执行。