Linux面试题
小秋w
这个作者很懒,什么都没留下…
展开
-
Linux常见面试笔试题之监控内存使用率
监控内存使用率,若超过70%,则记录占内存最高的前10个进程,并统计本机流量(连接数),假设本机是web服务器代码如下:#!/bin/bashwhile truedo echo "-------------------" >> /mnt/log/mem.log date +"20%y-%m-%d %H:%M:%S" >> /mnt/log/mem.log total=`free | grep -i "mem" | awk '{print $2}'` u原创 2022-04-14 16:45:03 · 440 阅读 · 0 评论 -
Linux面试笔试题之监控CPU使用率
监控CPU使用率,当使用率达到70%时,查看user% 和 iowait%,若user%高到50%,则统计服务进程数(假设时MySQL),若iowait%高到30%,则记录磁盘读写速度这里我们用 sar 命令查看,(用的虚拟机,比较空)代码如下:#!/bin/bashwhile truedo echo "-------------------" >> /mnt/log/cpu.log date +"20%y-%m-%d %H:%M:%S" >> /mnt/.原创 2022-04-14 16:35:44 · 500 阅读 · 0 评论 -
Linux面试笔试题之查找僵尸进程,记录日志并杀死
查看僵尸进程的方法有很多,但是容易写进脚本的我推荐用 ps -ef 命令。因为他会在僵尸进程后面标注<defunct>思路:用ps -ef 查看所有进程并抓出有defunct的行,将之导入一个临时文件,逐行读取文件内容,并抓取PID,用kill命令将其杀死,最后删除临时文件即可代码如下:#!/bin/bash echo "-------------------" >> /mnt/log/zombie.log date +"20%y-%m-%d %H:%M:%原创 2022-04-14 16:03:28 · 280 阅读 · 0 评论 -
Linux常见笔试题之:统计每个历史命令使用的次数,并降序排列显示
先说一下思想: 要想统计每个命令先排序再去重,将结果导入到一个临时文件,在while循环中逐行抓对应的命令统计次数,将命令和次数导入到另一个临时文件中,在对该文件进行降序排列,最后删除临时文件代码如下:#!/bin/bash history | sort -rn | uniq > cmd.tmp while read line do count=`history | grep "$line" | wc -l` echo "$line $count" >...原创 2022-04-13 19:50:43 · 1261 阅读 · 1 评论 -
Linux面试常问笔试题:统计访问日志中,昨天的访问量和每个客户的访问次数
假设日志文件是:access.log内容格式是:ip 192.168.10.100 time 20220413 10:05:20如图:我们先来说一下思路:抓日志文件中的文件要用时间戳,然后统计行数就是一天的访问量;要看每个客户的,就要用ip排序然后去重,得到客户的列表,导入到临时文件,然后逐行读取文件,再重新抓一下所有的日志文件做对比统计次数,导入到临时文件,再对临时文件做排序。shell代码如下:#!/bin/bashecho "--------------...原创 2022-04-13 19:24:59 · 1426 阅读 · 0 评论 -
linux常见笔试题(一)
题目:监控文件系统使用率,当发现使用率超过70%时,记录日志解题思路:要看使用率,用 df -h 命令,将结果导入到一个临时文件,记得去除第一行和加时间戳,用while循环逐行读取并抓取对应列,将后面的%去除,判断一下数字大小,然后记录日志,如果有其他操作可继续衔接df -h如下:(用虚拟机显示)代码如下:#!/bin/bash df -h | tail -n +2 > /mnt/df.tmp date +"20%y-%m-%d %H:%M:%S" >> /m原创 2022-04-14 15:49:22 · 385 阅读 · 0 评论