首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

简单的脚步命令编写

SSH权限问题

1、~/.ssh/authorized_keys的授权文件权限

chmod 644 authorized_keys

2、~/.ssh 文件夹的权限

chmod 700 .ssh

3、root用户下

只要不让别人写数据,就可以

编写脚本准备工作

学习centos基本命令,为shell做准备工作

$?//命令的返回值存储变量,0:成功 1:失败。

$#//参数个数

$n//获取n个参数

$0//当前脚本(命令)名称

$@//获取所有参数

shift//参数左移

# 是注释

编写shell脚本,头部要求声明解析命令:#!/bin/bash

1:熟悉centos中的shell脚本命令

a>获取文件名 echo 当前文件名:`basename 文件`

b>获取文件目录 echo 当前路径:`dirname 文件`

2.sh

echo 文件名:`basename $1`

echo 文件路径:`dirname $1`

1.编写一个简单的脚本:

a) 可以获取所有主机的主机名和用户

b) 主机名;hostname

c) 用户;whoami

2.编写一个简单的脚本2

a) 删除s250-s253之间的电脑文件

b) 删除/tmp/*下的所有文件

c) 删除/soft/hadoop/logs/*文件

配置全局jps

在/usr/local/bin配置一个jps的符号连接(软连接)

ln -s /soft/jdk/bin/jps /usr/local/bin/jps

将root用户实现无密登录

1.在~/.ssh下执行;ssh-keygen -t rsa -P ‘’ -f ~/.ssh/id_rsa

2.登录其他主机mkdir ~/.ssh

3.远程拷贝;scp ~/.ssh/id_rsa.pub root@s251:/root/.ssh/authorized_keys

rsync同步工具;可以复制链接

四个机器均安装rsync命令。

远程同步.

$>sudo yum install rsync

安装rsync脚本

#!/bin/bash

for (( i=201; i

echo 正在安装s$i的rsync

ssh mini$i yum -y install rsync

done ;

yum list installed | grep rsync 查询是否安装rsync软件

编写脚本

1.xcall.sh

#!/bin/bash

#获取所有参数

cmd=$@

for (( i = 250 ; i

echo ======正在执行s$i主机上的命令==============

ssh s$i "$cmd"

done;

2.copy.sh

#!/bin/bash

#获取第一个参数

cmd=$1

echo 传入的参数$cmd

#获取文件路径

filepath=`dirname $cmd`

echo 参数的文件路径$filepath

#获取文件的名称

filename=`basename $cmd`

echo 参数的文件名$filename

#进入文件路径

cd $filepath

#获取绝对路径

full=`pwd -P`

echo 参数的完整路径$full

user=`whoami`

for (( i = 251 ; i

#rsync -lr /soft/hadoop/etc centos@s251:/soft/hadoop

#echo ===== rsync -lr $full/$filename $user@s$i:$full =====

echo ===== 正在执行复制的主机:s$i ====

rsync -lr $full/$filename $user@s$i:$full

done;

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181221A0ADAD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券