shell 在练习

1. shell合集

1.shell中常用的基础命令

2.文本处理工具:grep、sed、awk

3.shell脚本的基础知识

4.shell脚本中的变量
需练习!

5.shell的执行流控制

2. 练习

1. cut sort uniq 命令练习

  1. 练习1
显示当前主机中不能登陆的用户(默认不能bash登陆)

grep bash -v /etc/passwd | cut -d : -f 1 
  1. 练习2
1.ifconfig 网卡,可以显示此网卡的信息,显示信息中包含此网卡使用的ip地址,
  请用命令过滤此ip并在输出时之显示ip不显示其他信息。
[root@server mnt]# ifconfig ens3 | head -n 2 | tail -n 1 | cut -c 14-27
172.25.254.121

2.找出能登陆系统用户中UID最大的用户,并显示其名称。
[root@server mnt]# grep bash /etc/passwd | sort  -nr -t : -k 3 | cut -d : -f 1 |head -n 1

3.当前主机为web服务器,请抓取访问web服务器次数排在前5的ip地址。
[root@server mnt]# cat /etc/httpd/logs/access_log | cut -d " " 1 | |sort -nr | uniq -c  | head -n 5 |awk '{print $2}'

2. test 命令脚本练习

2.1 test对于文件的判定

编写脚本文成以下条件:
file_check.sh在执行时,如果脚本后未指定检测文件报错“未指定检测文件,请指定”;如果脚本后指定文件不存在报错“此文件不存在”;当文件存在时请检测文件类型并显示到输出中。

#!/bin/bash
[ -z "$1" ] && {
   
	echo "Error: no check file , please input file name !!"
	exit
}

[ -e "$1" ] || {
   
	echo "$1" is not exist! 
	exit
}

TYPE=$(ls -l $1 | cut -c 1)

[ "$TYPE" = "l" ] && {
   
	echo $1 is flexible connection
	exit
}

[ "$TYPE" = "-" ] && {
   
	echo $1 is common file
	exit
}

[ "$TYPE" = "s" ] && {
   
	echo $1 is socket 
	exit
}

[ -c $1 ] && {
   
	echo $1 is character device
	exit
}

[ -b $1 ] && {
   
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值