Linux下常用命令及脚本
scp:复制文件
格式scp 源文件地址 目标文件地址 参数:-r 递归
scp atguigu@192.168.1.13:/opt/software/hadoop-2.7.2.tar.gz software/ #有三种方式 从A主机推到B主机 在B主机上从A主机拉到B主机 在B主机上把文件从A上推到C主机上
rsync;更新文件
格式:rsync 源文件地址 目标文件地址 参数:-r 递归 -l 保持符号链接文件 -v 详细输出模式
rsync root@192.168.1.13:/etc/hosts /etc/hosts
ssh免密登录
$ cd ~/.ssh/ $ ssh-keygen -t rsa #然后连续按三次回车,会生成一个公钥和一个私钥 $ ssh-copy-id hadoop103 把公钥传给hadoop03机器,即可免密登录hadoop103 $
集群分发脚本
(1)在/usr/local/bin目录下创建xsync文件
[root@hadoop102 bin]# touch xsync
[root@hadoop102 bin]# vi xsync
#!/bin/bash
#1 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if((pcount==0)); then
echo no args;
exit;
fi
#2 获取文件名称
p1=$1
fname=`basename $p1`
echo fname=$fname
#3 获取上级目录到绝对路径
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir
#4 获取当前用户名称
user=`whoami`
#5 循环
for((host=103; host<105; host++)); do
        #echo $pdir/$fname $user@hadoop$host:$pdir
        echo --------------- hadoop$host ----------------
        rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
done
(2)修改脚本 xsync 具有执行权限
[root@hadoop102 bin]# chmod 777 xsync [root@hadoop102 bin]# chown tly:tly xsync
(3)调用脚本形式:xsync 文件名称
[atguigu@hadoop102 opt]$ xsync tmp/
                    
                
                
            
        
浙公网安备 33010602011771号