当前位置:范文城>职场范本>笔试>

[老男孩笔记系列]-企业运维面试典型笔试题大汇总

笔试 阅读(2.8W)

问题70:编写一个程序,接收两个参数ID和content

[老男孩笔记系列]-企业运维面试典型笔试题大汇总

(1)如果这ID在文件中有,那么在数据库中插入一条记录。(2)如果ID没有那么把ID和content写入文件中。(来自《北京拓明科技有限公司》一灯同学提供2011-1-7)老男孩解答参考:分析:误区,此题看似简单,其实并不容易,好多学生,在文件没有比对完就做实际判断并操作,得到的结果是不对的。此题能够自己不去g,可以清晰的完成下来,在写脚本,编程方面基本就过关了。1、假设为如下内容[root@oldboy ~]# cat 01 ydds 02 jeacen 03 kuqi 04 maidong 05 yazhe 06 maliao 07 xiaofan2.使用编写好的脚本实施测试[root@oldboy ~]# sh 03 linux [root@oldboy ~]# mysql-S /data/3306/-e "select * from oy " +------+---------+ | id | content | +------+---------+ | 3 | linux | +------+---------+ [root@oldboy ~]# sh 06 oldboy [root@oldboy ~]# mysql-S /data/3306/-e "select * from oy " +------+---------+ | id | content | +------+---------+ | 6 | oldboy| +------+---------+ [root@oldboy ~]# sh 08 oldboy [root@oldboy ~]# cat 08 oldboy 提示:我的上文测试的mysql没有密码。3、实际脚本内容[root@oldboy ~]# cat #!/bin/sh purpose: script # USER YYYY-MM-DD ACTION # Oldboy 2011-01-07 Created # QQ:49000448老男孩 status=0 IdArray=($(cat $3|awk {print $1})) for ((i=0; i<`echo 1="" 2="" 99="" do="" if="" -eq="" then="" mysql-s="" -e="" drop="" database="" exists="" create="" table="" id="" content="" into="" let="" exit="" fi="" done="" status="" -ne="" echo="">./ fi

问题71如何查看apache进程数(百度和sohu面试题)

老男孩解答参考:

分两个情况

perfork模式:

ps -ef|grep http|grep -v grep|wc -l

worker模式

pstree -a|grep httpd|wc -l

前者进程模式后者线程模式故查看方法也有区别

说明:如果学生答题时,能一分为二的解答会比一个答案好很多的。每次我考学生时经常得到的答案:ps -ef|grep http|wc -l这也不能说你错,但是显然没有我给出的更吸引面试官的眼球。

问题72.处理以下文件内容,将域名取出并进行计数排序,如处理:(百度和sohu面试题)

老男孩解答参考:

分析:此类问题是运维工作中最常见的问题。可以演变成分析日志,查看TCp各个状态连接数,查看单Ip连接数排名等等

第一类过滤域名方法

方法很多老男孩这里给出六种为例。还可以写出几种留给大家了。哈哈

法一:

[root@oldboy ~]# cut -d "/" -f 3 |sort|uniq -c

1

2

法二:

[root@oldboy ~]# awk -F "/" {print $3} |sort|uniq -c

1

2

法三:

[root@oldboy ~]# sed s/^ htt.*////g |sed s//.*html$//g|sort|uniq -c

1

2

法四:

[root@oldboy ~]# cat |tr "/" "n"|grep etiantian|sort|uniq -c

1

2

第二类:

法五:

[root@oldboy ~]#cut -d "/" -f 3 |awk {++S[$1]} END {for(key in S) print key,S[key]}|sort -k2

1

2

3

法六:

一个利用AWK数组综合解决方法

[root@oldboy ~]# awk -F "/" {++S[$3]} END {for(key in S) print key,S[key]} |sort -k2

1

2

3

以上答案不同组合已可以达到10多种答案

提示:有关shell及以上用到的`命令的学习请参考老男孩的shell系列笔记或单独视频讲解.

问题73.在Shell环境下,如何查看远程Linux系统运行了多少时间?( sohu面试题)

解答:

me

16:07:56 up 276 days, 21:57,1 user,load average: 0.40, 0.65, 0.77

2. last|grep "system boot"|head -n 1

rebootsystem 5xen Tue Mar 16 18:11(276+21:58)

#有些学生竟然给我这个答案,我很无奈。

3. top

问题74. linux下如何添加路由(百度面试题)

解答:

route命令方法:

主机路由:

/sbin/route add -host dev eth2

/sbin/route add -host dev lo

缺省网关路由

/sbin/route add default gw

/sbin/route add default gw

网络路由去往某一网络

/sbin/route add -net netmask dev eth0 //通过eth0设备去连接

/sbin/route add -net netmask gw

/sbin/route add -net netmask gw

查看:

route -n

删除:

route del

ip route命令方法:

增加路由,主要是本机可以沟通的网段

ip route add dev eth0

增加可以通往外部的路由,需通过router

ip route add via dev eth0

增加默认路由

ip route add default via dev eth0

查看:

ip route show

删除:

ip route del