Linux 练习
练习一
-
分析日志t.log(访问量),将各个ip地址截取,并统计出现次数,并按从大到小排序(腾讯)
- 每行格式:http: //192.168.200.30/index1.html
cat t.txt | cut -d '/' -f 3 | sort | uniq -c | sort -nr
-
统计连接到服务器的各个ip情况,并按连接数从大到小排序(腾讯)
netstat -an | grep ESTABLISHED | awk -F " " '{print $5}' | cut -d ":" -f 1 | sort | uniq -c | sort -nr
-
使用tcpdump监听本机,将来自ip 192.168.200.1 ,tcp端口为22的数据,保存输出到tcpdump.iog,用做将来数据分析(美团)
tcpdump -i ens33 host 192.168.84.1 and port 22 >> tcpdump.log
-
列举Linux高级命乖令,至少6个(百度)
netstat //网络状态监控
top //系统运行状态
lsblk //查看硬盘分区
find //查找
ps -aux //查看运行进程
chkconfig //查看服务启动状态
systemctl //管理系统服务
- ......
-
Linux查看内存、io读写、磁盘存储、端口占用、进程查看命令是什么?(瓜子)
top
iotop
df -lh
netstat -tunlp
ps -aux
-
使用Linux命令计算t2.txt第二列的和并输出(美团)
-
t2.txt
-
cat t2.txt | awk -F " " '{sum+=$2} END {print sum}'
-
练习2
-
Shell脚本里如何检查一个文件是否存在?并给出提示(百度)
if [ -f 文件名 ] then echo "存在" else echo "不存在" fi
-
用shell写一个脚本,对文本t3.txt 中无序的一列数字排序,并将总和输出(百度)
sort -nr t3.txt | awk '{sum+=$1; print $1} END {print "和="sum}'
-
请用指令写出查找当前文件夹(/home)下所有的文本文件内容中包含有字符“cat"的文件名称(金山)
grep -r "ca" /home | awk -F ":" '{print $1}'
- 或
grep -r "ca" /home | cut -d ":" -f 1
-
请写出统计/home目录下所有文件个数和所有文件总行数的指令(在金山面试题扩展)
- 统计文件个数:
find /home -name "*.*" | wc -l
- 统计文件总行数:
find /home -name "*.*" | xargs wc -l
- 统计文件个数:
-
每天晚上10点30分,打包站点目录/var/spool/mail备份到/home目录下(每次备份按时间生成不同的备份包 比如按照年月日时分秒)(滴滴)
-
编写shell脚本
-
赋予脚本执行权限
-
加入crond定时任务调度
-