日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jenkins通过Execute shell中通过scp/ssh命令,将一台机器中项目远程拷贝到另外一台机器,修改文件中内容

發布時間:2024/9/27 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jenkins通过Execute shell中通过scp/ssh命令,将一台机器中项目远程拷贝到另外一台机器,修改文件中内容 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、前置條件

安裝expect

yum install expect -y

2、在Execute shell中編寫如下命令

在jenkins中執行以下命令的時候,前提條件是現在jenkins機器上手動執行一下ssh,scp下的命令

export BUILD_ID=DONTKILLME export JAVA_HOME=/usr/local/jdkexpect -c " spawn scp -r /root/.jenkins/workspace/youprojectPath remoteUsername@remoteip:/usr/local/work/ expect { \"*assword\" {set timeout 300; send \"youpassword\n\";} \"yes/no\" {send \"yes\n\"; exp_continue;} } expect eof" export BUILD_ID=DONTKILLME export JAVA_HOME=/usr/local/jdkexpect -c " spawn ssh test@ip \"cd /home/test/temp; sh jenkins-test.sh;\" expect {\"*assword\" {set timeout 300; send \"test\n\";}\"yes/no\" {send \"yes\r\"; exp_continue;}} expect eof"export BUILD_ID=DONTKILLMEexpect -c " spawn scp -r /root/.jenkins/workspace/cplan.test.qd-admin-project/youxuan-webapp/target/youxuan_webapp test@ip2:/home/test/apache-tomcat-7.0.85/webapps expect { \"*assword\" {set timeout 300; send \"test\n\";} \"yes/no\" {send \"yes\n\"; exp_continue;} } expect eof"expect -c " spawn ssh test@ip \"cd /home/test/apache-tomcat-7.0.85/webapps;mv youxuan_webapp qd-admin-project; cd /home/test/apache-tomcat-7.0.85/bin/;export JAVA_HOME=/home/test/jdk1.7.0_80; sh startup.sh;\" expect {\"*assword\" {set timeout 300; send \"test\n\";}\"yes/no\" {send \"yes\r\"; exp_continue;}} expect eof"

其中jenkins-test.sh的內容如下:

tomcatPid=`ps -ef | grep apache-tomcat-7.0.85 | grep -v grep | awk '{print $2}'` kill -9 $tomcatPidtomcatPid=`ps -ef | grep apache-tomcat-7.0.85 | grep -v grep | awk '{print $2}'` echo $tomcatPidcd /home/test/apache-tomcat-7.0.85/webapps rm -rf qd-admin-project*

參考另外一篇博文:

https://blog.csdn.net/tototuzuoquan/article/details/80290091

修改文件中的內容案例:

sed 's/-developing/-release/g' pom.xml > pom2.xml rm -rf pom.xml mv pom2.xml pom.xml

總結

以上是生活随笔為你收集整理的jenkins通过Execute shell中通过scp/ssh命令,将一台机器中项目远程拷贝到另外一台机器,修改文件中内容的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。