欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

linux跨服務(wù)器復(fù)制文件方式(scp含腳本批量復(fù)制)

 更新時(shí)間:2023年03月31日 10:03:20   作者:Yuhei001  
這篇文章主要介紹了linux跨服務(wù)器復(fù)制文件方式(scp含腳本批量復(fù)制),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

前言

作為一名開發(fā),也需要干運(yùn)維的工作,有時(shí)需要將一個(gè)文件(jar包)批量拷貝到多臺 Linux 服務(wù)器上。

如果逐臺scp命令拷貝,不僅需要更換ip,每次還需要輸入機(jī)器密碼,效率比較低下。

為提高效率,通過腳本方式實(shí)現(xiàn)將文件從一臺 Linux 主機(jī)批量拷貝到多臺服務(wù)器,以下為實(shí)現(xiàn)方法。

1.純命令復(fù)制方式

1.1 單個(gè)文件復(fù)制

scp /home/xxyy/manageweb/xxyy-web.jar xxyy@192.168.1.180:/home/xxyy/manageweb/bak

1.2 文件夾復(fù)制

加上 -r 即可

scp -r demoDir/ root@192.168.0.180:/opt/soft/

2. 腳本方式批量分發(fā)

2.1 創(chuàng)建腳本文件 scp.sh

#!/bin/bash
echo "拷貝情況如下:" > test.log
n=`cat demoIplist.txt | wc -l` #分發(fā)的ip數(shù)量
fileName=demo-web.jar #分發(fā)文件名
echo "即將分發(fā)的文件:$fileName"

for ((i=1; i <= $n; i++))
do
passwd=`cat demoPassword.txt | head -$i | tail -1`
ip=`cat demoIplist.txt | head -$i | tail -1`
echo $ip
##自動交互
expect <<EOF
spawn scp $fileName xxyyzz@$ip:/home/xxyyzz/manageweb/bak/
expect "yes/no" {send "yes\n;exp_untinue"}
expect "password" {send "$passwd\n"}
expect eof
EOF
if [ $? -eq 0 ];then
echo "$ip:成功" >>demoScpLog.log
echo "$ip:成功"
else
echo "$ip:失敗" >>demoScpLog.log
echo "$ip:失敗"

fi 
done
echo "復(fù)制完成!!!"

腳本解析:

  • 1.循環(huán)執(zhí)行scp命令
  • 2.循環(huán)切換demoIplist.txt中的目標(biāo)ip
  • 3.循環(huán)輸入demoPassword.txt中的密碼
  • 4.傳輸成功或失敗,均分別打印到控制臺和日志

2.2 創(chuàng)建分發(fā)目標(biāo)機(jī)器ip文件 demoIplist.txt

腳本循環(huán)讀取時(shí),會受換行符影響,需要注意刪除多余空行。

192.168.1.180192.168.1.179

2.3 創(chuàng)建分發(fā)目標(biāo)機(jī)器password文件 demoPassword.txt

由于生產(chǎn)上,不能設(shè)置免密傳輸,所以需要設(shè)置密碼。另外,如果密碼含有特殊字符,腳本將執(zhí)行失敗。

lC1yM51Dqxu7eq5Y13mUx1Uq6buG45mJ

2.4 執(zhí)行.sh文件

打印如下:

如上,即為腳本分發(fā)文件的方式。另外也可將文件名設(shè)置成文件可編輯的方式,會更加靈活,此處文件名固定方式就夠用了。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 給Apache虛擬主機(jī)增加端口的方法

    給Apache虛擬主機(jī)增加端口的方法

    這篇文章主要介紹了給Apache虛擬主機(jī)增加端口的方法,修改配置的方法很簡單,需要的朋友可以參考下
    2015-07-07
  • linux 進(jìn)程數(shù)最大值修改方法

    linux 進(jìn)程數(shù)最大值修改方法

    這篇文章主要介紹了linux 進(jìn)程數(shù)最大值修改方法,非常不錯(cuò)具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-07-07
  • centos6.5安裝vncserver圖文教程

    centos6.5安裝vncserver圖文教程

    這篇文章主要介紹了centos6.5安裝vncserver圖文教程的相關(guān)資料,這里對centos 安裝vncserver 進(jìn)行了實(shí)例介紹,需要的朋友可以參考下
    2016-11-11
  • 解決Linux常用命令“l(fā)l”失效或命令未找到的問題

    解決Linux常用命令“l(fā)l”失效或命令未找到的問題

    這篇文章主要介紹了Linux常用命令“l(fā)l”失效或命令未找到的問題及解決方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 如何禁止網(wǎng)站內(nèi)容被搜索引擎收錄的幾種方法講解

    如何禁止網(wǎng)站內(nèi)容被搜索引擎收錄的幾種方法講解

    今天小編就為大家分享一篇關(guān)于如何禁止網(wǎng)站內(nèi)容被搜索引擎收錄的幾種方法講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • linux 下的yum命令詳解

    linux 下的yum命令詳解

    yum(全稱為 Yellow dog Updater, Modified)是一個(gè)在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器。這篇文章給大家介紹linux 下的yum命令,需要的朋友參考下吧
    2016-12-12
  • Xshell7遠(yuǎn)程連接失敗(connection failed)的問題解決

    Xshell7遠(yuǎn)程連接失敗(connection failed)的問題解決

    本文主要介紹了Xshell7遠(yuǎn)程連接失敗(connection failed)的問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 制作PHP的RPM包詳解及實(shí)例

    制作PHP的RPM包詳解及實(shí)例

    這篇文章主要介紹了制作PHP的RPM包詳解及實(shí)例的相關(guān)資料,為了方便源碼包的安裝,我們需要自己訂制軟件包的需求,我們會把一些源碼包按照我們的需求來做成rpm包,需要的朋友可以參考下
    2016-12-12
  • CentOS 6.1 環(huán)境中部署nginx、php(包括fastcgi)、虛擬主機(jī)配置

    CentOS 6.1 環(huán)境中部署nginx、php(包括fastcgi)、虛擬主機(jī)配置

    CentOS 6.1 環(huán)境中部署nginx、php(包括fastcgi)、虛擬主機(jī)配置,需要的朋友可以參考下
    2012-08-08
  • 詳解linux centos yum安裝LAMP環(huán)境

    詳解linux centos yum安裝LAMP環(huán)境

    本篇文章主要介紹了linux centos yum安裝LAMP環(huán)境 ,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧。
    2016-12-12

最新評論