[root@chengyinwu ~]# cat .vimrc
set ignorecase
set nu
set autoindent
autocmd BufNewFile *.sh exec ":call SetTitle()"
func SetTitle()
if expand("%:e") == 'sh'
call setline(1,"#!/bin/bash")
call setline(2,"#********************************************************************")
call setline(3,"#Author:baozexu")
call setline(4,"#QQ: 2897374243")
call setline(5,"#Date: ".strftime("%Y-%m-%d"))
call setline(6,"#FileName: ".expand("%"))
call setline(8,"#Description: ")
call setline(9,"#********************************************************************")
call setline(10,"")
endif
endfunc
autocmd BufNewFile * normal G
[root@manager tmp]# cat var1.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var1.sh
#Description:
if [ $# -ne 2 ];then
echo "USAGE: $0 请传递两个参数: [username | password] "
exit
fi
useradd $1
echo "$2" | passwd --stdin "$1"
1.先实现, 无论多low
? 2.在进行改进
[root@manager tmp]# cat var2.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var2.sh
#Description:
echo $(hostnamectl |awk -F ": " '/Operating/ {print $2}')
echo "kernel $(uname -r) on an $(uname -m)"
read -p "$(hostname) login:" user
read -s -t3 -p "Password:" pw
echo "你输入的用户名为:$user 密码为:$pw"
[root@manager tmp]# cat var3.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var3.sh
#Description:
read -p "请输入你要备份的源文件或目录:" Dest
read -p "请输入你要备份的目标位置:" Path
echo "你要备份的源文件为: $Dest"
echo "你要备份的目标位置为:$Path"
read -p "你确定要备份吗? [yes | no ]" Action
if [ $Action == "yes" ];then
cp -rpv $Dest $Path
fi
[root@manager tmp]# cat var4.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var4.sh
#Description:
read -p "请输入探测主机的ip地址:" ip
ping -W1 -c1 $ip &> /dev/null
if [ $? -eq 0 ];then
echo "$ip is ok"
else
echo "$ip is error"
fi
?
1.打印当前的主机名称
2.提示用户输入新的主机名称
3.询问用户是否修改?
4.确定修改,执行修改命令
5.不确定修改,退出脚本
[root@manager tmp]# cat var5.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var5.sh
#Description:
echo "当前的主机名为: $(hostname)"
read -p "请输入新的主机名:" new_host
read -p "是否将$(hostname) 修改为${new_host} [yes | no ]" Action
if [ $Action == "yes" ];then
hostname $new_host
hostnamectl set-hostname $new_host
echo "你的主机名称已修改为 ${new_host} "
fi
[root@manager tmp]# echo ${PATH//bin/BIN}
/usr/local/sBIN:/usr/local/BIN:/usr/sBIN:/usr/BIN:/root/BIN
1)、打印string长度
2)、删除字符串中所有的Hadoop
3)、替换第一个Hadoop为Linux
4)、替换全部Hadoop为Linux
用户输入数字1|2|3|4,可以执行对应项的功能
[root@manager tmp]# cat var6.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var6.sh
#Description:
string="Bigdata process is Hadoop, Hadoop is open source project"
echo "1)、打印string长度"
echo "2)、删除字符串中所有的Hadoop"
echo "3)、替换第一个Hadoop为Linux"
echo "4)、替换全部Hadoop为Linux"
until [ $Action == q ] 2> /dev/null
do read -p "请输入对应的选项:[ 1| 2| 3| 4| ]" Action
if [ $Action == "1" ];then
echo "${#string}"
elif [ $Action == "2" ]; then
echo "${string//Hadoop/}"
elif [ $Action == "3" ]; then
echo "${string/Hadoop/Linux}"
elif [ $Action == "4" ]; then
echo "${string//Hadoop/Linux}"
fi
done
1.当前内存使用百分比是多少
? 2.进行判断比对
? 如果大于80% 则触发邮件
? 否则,over
? 已使用的内存 / 总内存 * 100 = 使用的百分比
[root@manager tmp]# cat var7.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var7.sh
#Description:
used=$(free -m |awk '/Mem/ {print $3/$2*100}')
if [ ${used%.*} -ge 10 ];then
echo "你的内存超过了80%,目前内存的使用率为:$used"
fi
[root@manager tmp]# cat var8.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var8.sh
#Description:
echo "今年的时间为:$(date +%Y)"
echo "明年的时间为: $(($(date +%Y)+1))"
[date +%j 已经过了多少天]()
一年有365天 已经过了 301 = 还剩下 365-301 = 64 / 7 = 还剩下多少周
已经过了 301 天 / 7 = 已经过了多少周
[root@manager tmp]# cat var9.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var9.sh
#Description:
echo "今年已经过了$(date +%j) 天"
echo "今年已经过了$[$(date +%j)/7] 周"
echo "今年还剩下$[365-$(date +%j)/7] 周"
echo "从现在距离下一年还剩下$[365-$(date +%j)] 天"
1.使用read让用户传值: $1 $2
? 2.对传入的值进行运算:
? 3.输出对应的结果.
?
[root@manager tmp]# cat var10.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var10.sh
#Description:
echo "$1+$2 = $[$1 + $2]"
echo "$1-$2 = $[$1 - $2]"
echo "$1*$2 = $[$1 * $2]"
echo "$1/$2 = $[$1 / $2]"
[root@chengyinwu ~/variables]# cat var07.sh
#!/bin/bash
#********************************************************************
#Author: baozexu
#QQ: 991540698
#Date: 2019-10-28
#FileName: var07.sh
#Description:
#********************************************************************
#List=w |awk '/up/ {print $6}'
echo "当前系统登录了$(w |awk '/up/ {print $6}') 个用户 "
[root@manager opt]# cat test2.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: test2.sh
#Description:
Zombie=$(ps aux |grep 'Z'|egrep -v 'VSZ|grep')
echo "僵尸进程的个数为:$(ps aux |grep 'Z'|egrep -v 'VSZ|grep' |wc -l)个"
echo "当前系统的僵尸进程为:
$Zombie"
[root@manager tmp]# cat var7.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var7.sh
#Description:
used=$(free -m |awk '/Mem/ {print $3/$2*100}')
if [ ${used%.*} -ge 10 ];then
echo "你的内存超过了80%,目前内存的使用率为:$used"
df -h|awk '/40G/ {print $(NF-1)}'
[root@manager tmp]# cat var1.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var1.sh
#Description:
if [ $# -ne 2 ];then
echo "USAGE: $0 请传递两个参数: [username | password] "
exit
fi
useradd $1
echo "$2" | passwd --stdin "$1"
192.168.56.1 - - [21/May/2018:20:44:06 -0400] "GET /index.html HTTP/1.0" 404 169 "-" "ApacheBench/2.3" "-"/code/index.html`
awk '{print $1}' access.log |sort |uniq -c|sort -nr
[root@manager variables]# cat var12.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var12.sh
#Description:
user=$(ls /home |wc -l)
echo "你的linux系统中有${user}个普通用户"
[root@manager variables]# cat var13.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var13.sh
#Description:
sum=0
for i in {1..100};do
if [ $[$i%3] -eq 0 ];then
sum=$[$i+$sum]
fi
done
echo "sum:$sum"
[root@manager variables]# cat var14.sh
#!/bin/bash
#Date: 2019-10-28
#FileName: var14.sh
#Description:
read -p "请输入两个整数:" n1 n2
expr $n1 + 1 > /dev/null 2>&1
[ $? -ne 0 ] && echo "请输入两个整数" && exit
expr $n2 + 1 > /dev/null 2>&1
[ $? -ne 0 ]&& echo "请输入两个整数" && exit
echo "$n1+$n2=`awk "BEGIN{print $n1+$n2}"` "
echo "$n1-$n2=`awk "BEGIN{print $n1-$n2}"` "
echo "$n1*$n2=`awk "BEGIN{print $n1*$n2}"` "
echo "$n1/$n2=`awk "BEGIN{print $n1/$n2}"` "
```
时间,输入到/tmp/txt.csv
[root@chengyinwu ~/variables]# cat var09.sh
echo "当前的系统日期为:\((date)">/tmp/txt.csv echo "当前有\)(w |awk ‘/up/ {print \(7}')个登录用户">>/tmp/txt.csv echo "过去15分钟的平均负载为:\)(w|awk ‘/load average/ {print \(NF}')">>/tmp/txt.csv echo "当前系统可用的内存大小为:\)(free -m|awk ‘/Mem/ {print $4}‘)">>/tmp/txt.csv
原文:https://www.cnblogs.com/baozexu/p/11787995.html