我一登陆就试图在我的ssh服务器上执行二进制文件.但是我可能想用单个ssh登录来推送我的二进制文件的更新并执行.我目前的做法是
猫执行| ssh user @ host’tat – > EXEC; chmod x exec; ./exec”
这不起作用,因为当我点击执行时,它似乎只是冻结.在此之后我没有得到服务器的回复.奇怪的是,一旦我上传了我可以简单执行的文件
ssh user @ host’./ exec’
并且文件执行得很好.我知道它正在到达二进制文件的执行过程,并且chmod正确设置文件的可执行位,它不会在单个命令中执行.有没有人有什么建议.
解决方法@H_403_12@
如果exec有x位,则使用tar而不是cat,并且tar保留模式.
tar cf – ./exec | ssh user @ server’tar xf – ; ./exec”
tar cf – ./exec | ssh user @ server’tar xf – ; ./exec”