Linux:命令通过shell脚本基本实现

 syeteminfo系统配置文件命令

   #!/bin/bash
    #Descrition:show system information
    #filename:systeminfo.sh
    echo "OS version is:`cat /etc/redhat-release`"
    echo "kernel version is:`uname -r`"
    echo "CPU type :`lscpu|grep 'Model name'|tr -s ' ' |cut -d: -f2`"
    echo "`cat /proc/meminfo |head -n1`"
    echo "`lsblk |grep '^sd'|tr -s ' ' |cut -d' ' -f1,4`"
    echo "My username is $USER"
    echo "My hostname is `hostname`"
    echo "NETwork IP:`ifconfig ens33|grep -w 'inet'|grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}'|head -n1`"

执行后,即可显示机器配置信息。      


 创建apache用户命令

    #!/bin/bash
    #Description:Useradd-apache u-80 g-80 home-/var/www shell-/sbin/nologin
    #filename:apache.sh  
    groupadd -g 80 apache
    useradd -u 80 -g apache -s /sbin/nologin -d /var/www apache
    echo "User apache is created"  
    mkdir -pv /var/www
    chown -R apache:apache /var/www    
    echo "/var/www is ready!"

执行后即可按照以上要求创建用户apache。
        

更改命令行颜色

    #!/bin/bash
    #Description:change root's COMMOND line color (33=yellow)  
    #filename:env.sh
    cat >> /root/.bash_profile <<EOF
    PS1="\[\e[1;33m\][\u@\h \W]\\$\[\e[0m\]"
    EOF

执行后root的命令行颜色即可变成黄色。    


制作一个添加执行命令的文件

    #!/bin/bash
    #Description:Add execution permissions to the file  
    #filename:ex.sh
    chmod +x $1
    echo $1 can be excute

执行只需输入命令后面跟文件名,即可添加权限。    

 

制作一个快速传到Dadda电脑的文件

    #!/bin/bash
    #Description:connect Handsome Dadda'computer 
    #filename:cdadda.sh
    scp $* Dadda@172.16.0.6:

执行只需输入命名后面跟文件名,即可传送到Dadda主机。  

创建任意用户密码为Dadda且修改密码过程不被看到,下次登录时强制更改密码

    #!/bin/bash
    #Desscription:Create the user and change the password the next time use it.
    #filename:createuser.sh
    #create $1
    useradd $1
    echo $1 create success!
    #for $1 create passwd   --No Display
    echo dadda | passwd --stdin $1 &>/dev/null
    #change the password the next time No Display (or:chage -d filename)
    passwd -e $1 &>/dev/null
    echo $1 password is reset!

执行只需输入命令后跟要创建的用户名,及创建成功。   

创建脚本时自动填写好基本信息

    #!/bin/bash
    name=Dadda_Du
    qq=316722220
    cat >$1 <<EOF
    #!/bin/bash
    
    #**************************************************************
    #Author:                 $name
    #QQ:                     $qq
    #Date:                   `date +%F`
    #FileName:               $1
    #URL:                     https://blog.csdn.net/weixin_40001704
    #Description:             The script test
    #Copyright(C):            2018 all rights reserved
    #**************************************************************

    EOF
    chmod +x $1
    vim + $1

执行时只需输入命令后跟要创建的脚本文件名,及创建成功。

 

 

执行脚本查看用户(DUSHAN)如存在则提示用户存在并退出,如不存在自动创建并提示创建成功,密码设为123456

#!/bin/bash

#*************************************************************************
#Author:                 Dadda_Du
#QQ:                     316722220     
#Date:                   2018-08-04    
#FileName:               idname_60.sh
#URL:                     https://blog.csdn.net/weixin_40001704
#Description:             command idname test user exist?
#Copyright(C):            2018 all rights reserved
#*************************************************************************
name=dushan

id $name &>/dev/null && { echo $name is exist!;exit; } || { useradd $name ; echo $name is create!; } && ( `echo 123456 | passwd --stdin
$name &>/dev/null` )  

(注意:括号里每个单词之间注意空格;邮箱路径/var/spool/mail/用户名;家目录路径/home/用户名)


执行此脚后磁盘大于66%发送广播并同时报送当前INODE使用情况

#!/bin/bash  

#*************************************************************************
#Author:                 Dadda_Du
#QQ:                     316722220      
#Date:                   2018-08-04    
#FileName:               checkdisk_60.sh
#URL:                     https://blog.csdn.net/weixin_40001704
#Description:             check the disk full?
#Copyright(C):            2018 all rights reserved      
#*************************************************************************
Diskuse=`df|grep /dev/sd|egrep -o '[0-9]{1,3}%'|egrep -o '[0-9]{1,3}'|sort -nr|head -n1`
InodeNum=`df -i|egrep -o '[0-9]{1,3}%'|egrep -o '[0-9]{1,3}'|sort -nr|head -n1`
n=66

[ $Diskuse -gt $n ] && wall "Disk use >(gt) $n%" && wall "Inode use eq $InodeNum%"

(注意:中括号与内容间空格,中括号内变量添加双引号,避免报错)


执行此脚本后判断系统版本

#!/bin/bash           

#*************************************************************************
#Author:                 Dadda_Du
#QQ:                     316722220     
#Date:                   2018-08-04    
#FileName:               checkversion_60.sh
#URL:                     https://blog.csdn.net/weixin_40001704
#Description:             Checkversion 6 or 7?
#Copyright(C):            2018 all rights reserved
#*************************************************************************
ver=` egrep -o "[0-9]+" /etc/redhat-release|head -n1`

[ "$ver" -eq 7 ] && echo "Centos7" || echo "Centos6"

执行此脚本后可判断键入内容(191.191.111.111)是否为合法IP

#!/bin/bash  

#*************************************************************************
#Author:                 Dadda_Du
#QQ:                     316722220     
#Date:                   2018-08-04    
#FileName:               checkip_60.sh
#URL:                     https://blog.csdn.net/weixin_40001704
#Description:             Legal IP?
#Copyright(C):            2018 all rights reserved
#*************************************************************************
IP=191.191.111.111

[[ "$IP" =~ ^(([1-9]?[0-9]|1[0-9]?[0-9]|2[0-4][0-9]|25[0-5])\.){3}([1-9]?[0-9]|1[0-9]?[0-9]|2[0-4][0-9]|25[0-5])$ ]] && echo "The $IP 
is legal!" || echo "The $IP is illegal!!"

(注意:中括号中的变量要加双引号,正则表达式后面判断内容不要加双引号)

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值