免密上传执行脚本方法
在本地使用
ssh-keygen -t rsa
生成密钥文件,并将 /home/user/.ssh/id_rsa.pub文件上传到服务器/home/user/.ssh/下
重命名为authorized_keys或追加到其中
#!/bin/sh
echo "拉取最新文件"
git pull
echo "编译打包"
mvn clean install
echo "开始上传"
scp xxx.jar user@host:/home/user/upload
echo "执行重启"
ssh user@host "/home/user/restart.sh"
关于远程执行脚本找不到命令的问题,可以用绝对路径执行命令
使用
which java
查找命令路径
远程执行命令登录使用的环境不一样,目前测试在登录用户下的.bashrc或者.bash_profile文件添加环境变量依然无法解决找不到命令的问题