目录
shell脚本
1 通过正则表达式匹配文本中的IP地址?
cat ip.txt |grep '^[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}$'
2 获取文本最后一列 ?
如果列之间值空格 或者逗号之类的字符 限定符可以是空格 也可以是字符, 打印出第三列。
cat content.txt | awk -F "限定符" { print $ 3}
1.统计处nginx日志中的IP地址,并统计处每个ip地址的次数。并从大到小排列?
cat access.log | awk '{print $1}' | sort | uniq -c | sort -nr | less
解答:首先nginx的ip地址在日志的第一列,可以通过awk取出第一列的值,其次进行排序,发现很多每个重复的ip地址,因为uniq的操作必须是先排序的数列,uniq去除重复的并统计个数,这是发现每个IP地址的访问次数已经统计处理,但是没有排序,这是在按从大到小进行排序。less使用分页显示。
2,找出目录/test下所有的.log文件,并且打印这些文件内容。
解答:
find /test -name "*.log" | xargs cat
3,使用shell实现以下任务,假设有一个文件a.