1.
#!/bin/bash
lvmdiskscan | grep centos > /root/a.txt
a=`sed -n '1p' /root/a.txt`
b=`sed -n '2p' /root/a.txt`
c=`sed -n '3p' /root/a.txt`
cat <<eof
** . 分区 $a**
** . 分区 $b**
** . 分区 $c**
eof

2完成版centos分区合并

#!/bin/bash
lvmdiskscan | grep centos > /root/a.txt
cat /root/a.txt | while read ips;
do
a1=`echo $ips|awk '{ print $1 }'`
a2=`echo $ips|awk '{ print $3 }'`
a3=`echo ${a2%.*}`
echo $a1
echo $a3
done
read -p "remove lv: " remove2
read -p "add lv: " add2
read -p "big : " big
rmfstab=`echo ${remove2##*/}`
addlvname=`echo ${add2##*/}`
addlvtype=`blkid | grep $addlvname | awk -F "[\"\"]" '{print $4}'`
umount $remove2
lvremove $remove2
lvextend -L +"$big"G $add2
# 变量记得加双引号
if [[ $addlvtype == xfs ]] ;then
# 根据字符串判断
xfs_growfs $add2
else
resize2fs $add2
fi
sed -i "/"$rmfstab"/d" /etc/fstab
# 删除移除lv开机挂载 注意使用时删除注释内容
mount -a

参考https://www.cnblogs.com/flintlovesam/p/6677037.html

https://www.cnblogs.com/keanuyaoo/p/3359838.html

${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt
${file##*/}:删掉最后一个 /  及其左边的字符串:my.file.txt
${file#*.}:删掉第一个 .  及其左边的字符串:file.txt
${file##*.}:删掉最后一个 .  及其左边的字符串:txt
${file%/*}:删掉最后一个  /  及其右边的字符串:/dir1/dir2/dir3
${file%%/*}:删掉第一个 /  及其右边的字符串:(空值)
${file%.*}:删掉最后一个  .  及其右边的字符串:/dir1/dir2/dir3/my.file
${file%%.*}:删掉第一个  .   及其右边的字符串:/dir1/dir2/dir3/my

记忆的方法为:

复制代码 代码如下:
# 是 去掉左边(键盘上#在 $ 的左边)
%是去掉右边(键盘上% 在$ 的右边)
单一符号是最小匹配;两个符号是最大匹配
 
其他脚本方式参考
https://www.cnblogs.com/out8/p/4353017.html
 
centos7 性能测试
#! /bin/bash
#==============================================================#
# Description: Unixbench script #
# Author: Teddysun <i@teddysun.com> #
# Intro: https://teddysun.com/245.html #
#==============================================================#
cur_dir=/opt/unixbench # Check System
[[ $EUID -ne ]] && echo 'Error: This script must be run as root!' && exit
[[ -f /etc/redhat-release ]] && os='centos'
[[ ! -z "`egrep -i debian /etc/issue`" ]] && os='debian'
[[ ! -z "`egrep -i ubuntu /etc/issue`" ]] && os='ubuntu'
[[ "$os" == '' ]] && echo 'Error: Your system is not supported to run it!' && exit # Install necessary libaries
if [ "$os" == 'centos' ]; then
yum -y install make automake gcc autoconf gcc-c++ time perl-Time-HiRes
else
apt-get -y update
apt-get -y install make automake gcc autoconf time perl
fi # Create new soft download dir
mkdir -p ${cur_dir}
cd ${cur_dir} # Download UnixBench5.1.3
if [ -s UnixBench5.1.3.tgz ]; then
echo "UnixBench5.1.3.tgz [found]"
else
echo "UnixBench5.1.3.tgz not found!!!download now..."
if ! wget -c https://dl.lamp.sh/files/UnixBench5.1.3.tgz; then
echo "Failed to download UnixBench5.1.3.tgz, please download it to ${cur_dir} directory manually and try again."
exit
fi
fi
tar -zxvf UnixBench5.1.3.tgz && rm -f UnixBench5.1.3.tgz
cd UnixBench/ #Run unixbench
make
./Run echo
echo
echo "======= Script description and score comparison completed! ======= "
echo
echo

lvm 扩容分区

     /sbin/fdisk /dev/sda
partprobe #同步分区表到硬盘
ls /dev/sda*
pvcreate /dev/sda3
vgs
vgextend centos /dev/sda3
vgs
lvs
df -h
vgs
lvextend -L +200G /dev/mapper/centos-root
xfs_growfs /dev/mapper/centos-root #扩容真实大小

修改网卡名字脚本 ip和网关 网卡名字 记得修改

#!/bin/bash
NETIP=192.168.120.72
NETGATWAY=192.168.120.1
# 用不到HOSTNAME=dockercang.cn
DNS1=223.5.5.5
ethold=ens192 cat << EOF
+------------------------------------------------------------------+
| ********** Welcome to CentOS .x Rename Network ********** |
+------------------------------------------------------------------+
EOF
[ `whoami` != "root" ] && echo "please use root" && exit
function format() {
echo -e "\033[32m Success!!!\033[0m\n"
echo "#########################################################"
} echo "修改配置文件"
rm -rf /etc/sysconfig/network-scripts/ifcfg-$ethold
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 << EOF
TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=$NETIP
PREFIX=
GATEWAY=$NETGATWAY
DNS1=$DNS1
EOF
format echo "编辑内核信息"
cat > /etc/sysconfig/grub << EOF
GRUB_TIMEOUT=
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb net.ifnames=0 biosdevname=0 quiet"
GRUB_DISABLE_RECOVERY="true"
EOF
format
echo "生成启动菜单"
grub2-mkconfig -o /boot/grub2/grub.cfg
format
reboot

jdk安装脚本

#!/bin/bash
wget http://192.168.130.150/jdk/jdk-8u211-linux-x64.tar.gz
tar xf jdk-8u211-linux-x64.tar.gz -C /usr/local/
echo "export JAVA_HOME=/usr/local/jdk1.8.0_211" >> /etc/profile.d/jdk8.sh
echo "export CLASS_PATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/jar/tools.jar:\$JAVA_HOME/jre/lib" >> /etc/profile.d/jdk8.sh
echo "export PATH=\$JAVA_HOME/bin:\$JAVA_HOME/jre/bin:\$PATH" >> /etc/profile.d/jdk8.sh
echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/local/apr/lib" >> /etc/profile.d/jdk8.sh chmod +x /etc/profile.d/jdk8.sh
source /etc/profile.d/jdk8.sh
java -version

然后手动执行

source /etc/profile.d/jdk8.sh

关键字查询文件

grep -rn "aaa" /root/
grep -r "aaa" /root/
grep -Rn "data_chushou_pay_info" *.py #根据关键字过滤

批量添加用户

vi adduser.sh

#!/bin/bash
for name in $(more users.list)
do
if [ -n "$name" ];then
useradd -m $name
echo
echo $name"" | passwd --stdin "$name"
echo
echo "user $name's password change"
else
echo
echo 'The username is null'
fi
done

vi users.list

Jason
Miles
James
sh adduser.sh

删除用户脚本

#!/bin/bash
userdel $
cd /home/
rm -rf $
cd /var/spool/mail && rm -f $

另一种加用户方式

#!/bin/sh
for i in $(cat deyimingdan)
do
useradd $i
echo $i | passwd --stdin $i
chage -d $i
echo "$i ALL=(ALL) ALL" >> /etc/sudoers
done
chage -d 0 #表示密码立即过期需要修改密码

centos7 lvm合并分区脚本初探-linux性能测试 -centos7修改网卡名字-jdk环境安装脚本-关键字查询文件-批量添加用户的更多相关文章

  1. 【转载】干货再次来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载八)用命令实现批量添加用户

    Windows添加用户需要至少5个界面,而Linux一条命令就搞定了,这是不是高效人士办公第一法则呢.本文不给你一堆参数和选项,不让你见识教条主义,只给你最实用的代码. 想每天能听到小妞的语音播报,想 ...

  2. 工程师技术(五):Shell脚本的编写及测试、重定向输出的应用、使用特殊变量、编写一个判断脚本、编写一个批量添加用户脚本

    一.Shell脚本的编写及测 目标: 本例要求两个简单的Shell脚本程序,任务目标如下: 1> 编写一个面世问候 /root/helloworld.sh 脚本,执行后显示出一段话“Hello ...

  3. 用户管理 之 在Linux系统中,批量添加用户的操作流程

    一.阅读此文件您需要掌握的基础知识: <Linux 用户(user)和用户组(group)管理概述><用户(user)和用户组(group)配置文件详解><Linux 用 ...

  4. (1)使用bash脚本实现批量添加用户

    脚本实现内容: 可以指定用户名前缀,指定添加数量的批量添加用户脚本,密码为10为随机小写字母,并把用户名和密码写入文件中. 脚本代码: #!/bin/bashread -p "用户名前缀:& ...

  5. (转)通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加

    通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加 原文:http://www.21yunwei.com/archives/4773 有一个朋友问我如何批量创建用户和设置密码 , ...

  6. shell编写一个批量添加用户脚本

                                                          shell编写一个批量添加用户脚本 5.1问题 本例要求在虚拟机server0上创建/roo ...

  7. Linux实现批量添加用户及随机密码小脚本

    通过chpasswd命令可实现迅速为用户批量设置密码     实例:写一个脚本,实现批量添加20个用户user1-20,密码为用户名和后面跟5个随机字符 #!/bin/sh # 思路:通过for循环, ...

  8. Linux下批量添加用户

    添加和删除用户对每位Linux系统管理员都是轻而易举的事,比较棘手的是如果要添加几十个.上百个甚至上千个用户时,我们不太可能还使用useradd一个一个地添加, 必然要找一种简便的创建大量用户的方法. ...

  9. linux下卸载自带的JDK和安装想要的JDK

    卸载 1.卸载用 bin文件安装的JDK方法:      删除/usr/java目录下的所有东西 2.卸载系统自带的jdk版本方法: 查看自带的jdk: #rpm -qa | grep gcj 看到如 ...

随机推荐

  1. CSS -- 盒子模型 margin 的特点

    margin在使用过程中具有如下的两个特点: 1.垂直外边距塌陷 --给子元素设置margin-top的时候,如果父元素也随着margin-top改变位置 解决方式: 给父元素设置边框 给父元素设置o ...

  2. 阿里云安装mysql,初始化密码修改

    阿里云服务器,centos7, rpm包安装MySQL,初始化了个奇葩密码 登陆不上, 修改配置文件/etc/my.cnf,在[mysqld]下面添加一行代码:skip-grant-tables se ...

  3. pytorch & numpy广播法则

    广播法则 所有数组向维度最高的数组看齐,若维度不足则在最前面的维度用1补齐 扩展维度后,所有数组在某一维度相同或者长度为1,否则不能计算 当可以计算时,将长度为1的维度扩展为另一数组相应维度的长度 a ...

  4. Linux的几种关机命令

    在linux下一些常用的关机/重启命令有shutdown.halt.reboot.及init,它们都可以达到重启系统的目的,但每个命令的内部工作过程是不同的,通过本文的介绍,希望你可以更加灵活的运用各 ...

  5. Azure Cognitive Services- Speech To Text

    Speech 服务是认知服务的一种,提供了语音转文本,文本转语音, 语音翻译等,今天我们实战的是语音转文本(Speech To Text). STT支持两种访问方式,1.是SDK,2.是REST AP ...

  6. 利用python模拟鼠标点击自动完成工作,提升你的工作效率!

    没有什么能比学以致用让学习变得更有动力的了. 不知道大家在工作中有没有一些工作需要重复的点击鼠标,因为会影响到财务统计报表的关系,我们每个月底月初都要修改ERP中的单据日期,单据多的时候光修改就能让你 ...

  7. 008.Delphi插件之QPlugins,服务的两种调用方法

    这个QPlugins自带的DEMO,大概的意思就是,创建2个服务类,程序启动的时候注册这2个服务类.点击不同的按钮,使用不同的方法来调用这个服务. 效果界面如下 unit Frm_Main; inte ...

  8. 解析underscore中的throttle

    什么是throttle(节流) Throttling enforces a maximum number of times a function can be called over time. 简单 ...

  9. Job for nginx.service failed because the control process exited with error code. See “systemctl stat

    启动nginx服务时如果遇到这个错误 Job for nginx.service failed because the control process exited with error code. ...

  10. idea基于springboot搭建ssm(maven)

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/liboyang71/article/det ...