记一次面试题

前天第一次去面试,学了一大堆很高端的技术都没有问到。问了一些基础问题。
好在我也没有落下基础,下面我对上次面试做个总结。

1.获取某个时间段以内同一个ip对nginx的访问次数
示例:获取2016.06.14 03:00:00 - 04:00:00

14/Jun/2016:03:00:00

14/Jun/2016:04:00:00

思路:
(1)先取03:00-04:00时间段内所有的访问记录
(2)显示其出现的次数

(1)
sed '[email protected]\[@@g' /var/log/nginx/access.log | awk '$4 >="14/Jun/2016:03:00:00" && $4 <="14/Jun/2016:04:00:00" {print $1}' | uniq -c

(2)
sed '[email protected]\[@@g' /var/log/nginx/access.log | awk '$4 >="14/Jun/2016:03:00:00" && $4 <="14/Jun/2016:04:00:00" {ip[$1]++}END {for (s in ip) print s,ip[s]} '

2.删除一个目录下的所有文件,但保留一个指定文件
(1) 查找指定指定文件取反,删除之。。

touch test{1..10}
find . -type f ! -name test10 -exec rm -rf {} \;

2-1.删除一个目录下的所有文件,但保留两个指定文件

touch test{1..10}
find . -type f ! -name test10 -a ! -name test1 -exec rm -rf {} \;