ssh User@Host 'bash -s' < /home/admin/code/myinit.sh
ssh user@ip "cmd1 && cmd2"
ssh user@ip "cmd1 || cmd2"
ssh user@ip "cmd1 && cmd2" 和 ssh user@ip "cmd1;cmd2" 还有 ssh user@ip "cmd1 || cmd2"的区别:
通过 SSH 运行命令的问题在于,通常您必须自己键入它们或上传脚本文件。但是,通过一些 bash 知识,您可以通过 SSH 传递整个脚本,而无需.sh 在远程计算机上保存该文件。
解决方案:通过标准输入传递脚本
SSH 命令有一种模式,您可以在其中在远程服务器上运行任何单个命令。为了运行多个命令,您必须使用以下技巧:
ssh user@remotehost 'bash -s' < script.sh
该bash -s 命令的意思是“在新的 bash 会话中执行以下命令”。该-s 标志使其从标准输入.
问题:测试中在本地run起来docker并且进入,发现可以正常跑通。但是一旦把镜像上传镜像仓库,用k8s启动起来后,ssh进去,提示没有安装所需软件。出现问题的原因:ssh建立连接的时候会导致环境变量被重置。归根结底,就是环境变量的问题,它找不到安装的那些东西。嗯....仿佛一个路痴,换了条路就回不去家了。解决方法:第一步)修改/etc/profile文件 a.使用for循环
b.使用一条命令
亲测,一条命令贼好使~
现场的STM32 CAN总线设置一共有3个:A、B、C。其中A是发送命令者,C是执行命令者,B是分析命令者。A发送命令,C执行命令后输出信号,B通过分析命令的内容切换继电器通道。以上就是设计初衷。
实测发现存在故障,在某些情况下,A发送的命令,C执行并回复A一条CAN报文,由于A的发送和C的回复间隔时间太近,致使B解析报文时又接收到了新的报文,最终使得报文解析无效,继电器不动作。
解决方法是B...
文章目录SSH连接服务器后执行多条命令1 使用分号隔开2 使用管道符号隔开3 使用写EOF的方式4 使用脚本的方式
SSH连接服务器后执行多条命令
大家平时有没有遇到自己连接云服务器,ssh 连接上去之后,发现自己的一些小工具用不了
例如go build无法使用 ,由于我们安装配置golang 环境的时候,是在文件/etc/profile中写了配置,因此需要source 一下/etc/profile
那么是否可以在ssh 连接上服务器的时候就可以立即自动执行这一类命令呢?
我们的智慧无穷无尽,小工具也是非常