linux shell几道题

1:写一个用户登录时执行的脚本,实现下述功能

 


2写一个更换centos-base源和epel源的脚本要求在centos6和centos7都能用

3:写一个脚本,实现判断172.16.6.0/24网络里,当前在线用户的IP有哪些?

4:使用for循环打印下面这句话中字母数不大于6的单词

I am oldboy teacher welcome to oldboy training class.

 

5使用shell的for循环输出一个正方形



1.[root@localhost scripts]# cat system.sh 
#!/bin/bash
echo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
echo "  "


echo -e "\033[1;36;40m***************************************************************************\033[0m"
echo -e "\033[1;36;40m*                                  注意事项                               *\033[0m"
echo -e "\033[1;36;40m*                                                                         *\033[0m"
echo -e "\033[1;36;40m*       这是台测试服务器,不要轻易执行rm -rf或者其他敏感的操作            *\033[0m"
echo -e "\033[1;36;40m*       另外home分区最大,如需上传软件包或设置服务的工程目录和            *\033[0m"
echo -e "\033[1;36;40m*               日志目录,请设置在home分区下!!!                           *\033[0m"
echo -e "\033[1;36;40m***************************************************************************\033[0m"
echo " "
date=`date "+%Y-%m-%d %H:%M:%S"`
echo System Time: $date
echo ---------------------------------------
echo "Kernel Version: `uname -r`"
echo "HostName:       `hostname`"
echo "System Load:   `uptime |awk -F ':' '{print $NF}'`"
usemem=`free |awk  'NR==2{print $3}'`
allmem=`free |awk  'NR==2{print $2}'`
mem=`awk 'BEGIN{print('$usemem'/'$allmem')}'|cut -c 1-4|awk '{print $0i"%"}'|tr '0.' ' '`
echo "Memory Usage: ${mem}  "
echo "Login Users:    `w |head -1|awk -F ',' '{print $2}'|awk -F ' ' '{print $1}'`"
echo "User:           `id -un`"
echo "Processes:      `ps -ef |wc -l`"
echo ---------------------------------------
echo "Filesystem:     Usage "
echo " `df -h|awk 'NR==2{print $6}'`              `df -h|awk 'NR==2{print $5}'`                  "
echo "/boot           13%"


echo "Interface       MAC Address         IP Address"
echo "eth0            `ifconfig eth0|awk  'NR==4{print $2}'`   `ifconfig eth0|awk 'NR==2{print $2}'|awk '{print $0"/24"}'`"
echo "eth1            `ifconfig eth1|awk 'NR==4{print $2}'`   `ifconfig eth1|awk 'NR==2{print $2}'|awk '{print $0"/24"}'` "
echo +++++++++++++++++++++++++++++++++++++++++++++++++++++++++

2.[root@localhost scripts]# cat centos.sh 
#!/bin/bash


a=`uname -r|awk -F '[l.]' '{print $5}'`
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-${a}.repo

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-${a}.repo


3.[root@localhost scripts]# cat ping.sh 
#!/bin/bash


for i in 172.16.6.{1..254}


do
if [ `ping -c 1 $i |tail -2|head -1|awk -F '[, ]' '{print $5}'`  -eq 1 ];then


 echo "$i 用户 is 在线"


fi
done


4.[root@localhost scripts]# cat str_6.sh 

#!/bin/bash

for i in I am oldboy teacher welcome to oldboy training class


do
if [ `echo $i|wc -L` -lt 6 ];then
 echo $i
fi 
done


5.[root@localhost scripts]# cat zheng.sh 
#!/bin/bash
read -p 'Please Enter a number:' input


for((i=0;i<${input};i++))
do
for((j=0;j<$((${input}*2));j++))
do
echo -n "+"
done
echo " "
done

猜你喜欢

转载自blog.csdn.net/qq_39583463/article/details/80933667