在hadoop集群內,為方便修改每個裝置的檔案,編寫如下指令碼。
作用:將在乙個裝置下,實現迴圈複製檔案到所有節點的相同目錄下。
指令碼原始碼:
#!/bin/bash
pccount=$#;
if ((pccount<1)); then
echo no args;
exit;
fip1=$1;
fname=`basename $p1`
#獲得上級目錄的絕對路徑
pdir=`cd -p $(dirname $p1);pwd`
echo $pdir
cuser=`whoami`
#迴圈for((host=2;host<7;host=host+1));do
echo $pdir/$fname $cuser@dsj$host.zkhy.com:$pdir
rsync -rvl $pdir/$fname $cuser@dsj$host.zkhy.com:$pdir
done
指令碼位置:/usr/local/bin,將指令碼命名為xsync。
使用舉例:在1裝置/home/hive目錄下存有test.txt檔案,在此目錄下執行xsync tets.txt命令,
則結果顯示2-6裝置的/home/hive目錄下都擁有了test.txt檔案。
hadoop集群指令碼
bin bash 驗證引數 if 1 then echo 請輸入要分發的單個檔案 exit fi 獲取分發檔案的絕對路徑 dirpath cd dirname 1 pwd p filename basename 1 echo 要分發的檔案的路徑是 dirpath filename 獲取當前的使用者名...
在redhad下檔案傳輸的指令碼
1.首先在兩台伺服器之間建立ssh的金鑰,以便執行scp時不要輸入使用者名稱密碼 3.執行如下指令碼 bin bash dirfile date y m d scp p 1234 z data back backup uc dirfile root 219.239.94.40 z data back...
VC檔案傳輸
vc 檔案傳輸的實現 2008 07 20 20 33 要實現檔案傳輸最簡單的辦法是寫兩個執行緒,乙個伺服器段的傳送處理執行緒,乙個客戶端的接收處理執行緒。執行緒處理函式需要宣告為類的靜態成員,由於不可訪問類內部的資料成員,所以引數傳遞裡面最好有個類的指標 伺服器段的傳送處理執行緒 cfiletra...