linux如何編寫同步文件的腳本
linux編寫同步文件的腳本
搭集群最麻煩的就是修改配置文件,如果只用修改一個(gè)機(jī)器上的配置文件,然后用一個(gè)腳本就可以把配置文件同步到其他機(jī)器上,豈不快哉!
編寫一個(gè)名為xsync的腳本文件
作用: 將當(dāng)前機(jī)器的文件,同步到集群所有機(jī)器的相同路徑下!
hadoop102:/A/a , 執(zhí)行腳本后,將此文件同步到集群中所有機(jī)器的 /A/a
用戶在使用xsync時(shí),只需要傳入要同步的文件即可
xysnc a
不管a是一個(gè)相對(duì)路徑還是絕對(duì)路徑,都需要將a轉(zhuǎn)換為 絕對(duì)路徑!
文件的 絕對(duì)路徑=父路徑+文件名:
- 父路徑: dirpath=$(cd
dirname /home/atguigu/hi; pwd -P) - 文件名: filename=
basename hi
pwd的 -P參數(shù)是為了避免出現(xiàn)軟鏈接導(dǎo)致的路徑問題,-P可以使軟鏈接顯示出真實(shí)的鏈接
- 核心命令:
for(()) do rsync -rvlt path1 done
- 正式文件:
#!/bin/bash #校驗(yàn)參數(shù)是否合法 if(($#==0)) then echo 請(qǐng)輸入要分發(fā)的文件! exit; fi #獲取分發(fā)文件的絕對(duì)路徑 dirpath=$(cd `dirname $1`; pwd -P) filename=`basename $1` echo 要分發(fā)的文件的路徑是:$dirpath/$filename #循環(huán)執(zhí)行rsync分發(fā)文件到集群的每條機(jī)器 for((i=101;i<=103;i++)) do echo ---------------------hadoop$i--------------------- rsync -rvlt $dirpath/$filename username@hostname$i:$dirpath done
最后別忘了把xcall文件放進(jìn) 家目錄下的bin目錄
如果沒有就新建一個(gè)bin目錄
因?yàn)檫@目錄是在 全局環(huán)境變量 中
放進(jìn)去后無論在哪個(gè)目錄下都可以執(zhí)行這個(gè)腳本文件!
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux初學(xué)(CnetOS7 Linux)之切換命令模式和圖形模式的方法
本篇文章主要介紹了Linux初學(xué)(CnetOS Linux7)之切換命令模式和圖形模式的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03
ubuntu下使用sublime text時(shí)如何完美輸入中文
網(wǎng)上的很多方法都不能讓ubuntu下的sublime輸入中文,使用Input Helper也很是別扭,這個(gè)方法是某大神通過啟動(dòng)sublime程序前運(yùn)行腳本修改sublime來實(shí)現(xiàn)中文輸入。2015-12-12
Ubuntu/Linux 有關(guān)權(quán)限修改的命令解析
這篇文章主要介紹了Ubuntu/Linux 有關(guān)權(quán)限修改的命令的相關(guān)資料,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下2016-11-11
Linux系統(tǒng)架構(gòu)類型的5條常用查看命令
很多時(shí)候我們都需要查看當(dāng)前 Linux 系統(tǒng)是 32 位還是 64 位系統(tǒng)架構(gòu)類型,本文中我將向大家推薦 5 條常用命令,感興趣的小伙伴們可以參考一下2016-07-07
動(dòng)態(tài)庫(kù)調(diào)用靜態(tài)庫(kù)示例講解
一個(gè)應(yīng)用程序調(diào)用動(dòng)態(tài)庫(kù), 而這個(gè)動(dòng)態(tài)庫(kù)其中的函數(shù)調(diào)用某靜態(tài)庫(kù)時(shí),如何生成應(yīng)用程序呢?看下面的代碼就明白了2013-12-12
如何修改Linux系統(tǒng)的/etc/ssh/sshd_config權(quán)限
文章描述了在修改/etc/ssh/sshd_config文件權(quán)限時(shí)遇到的問題,普通用戶使用`chmod 777`命令無法修改文件權(quán)限,但切換到root用戶后,問題解決,作者希望通過分享這個(gè)經(jīng)驗(yàn)幫助他人2026-03-03

