Linux运维面试必备:awk、grep、sed命令与CRONTAB实战
需积分: 10 66 浏览量
更新于2024-07-20
收藏 317KB PDF 举报
"这是一份关于Linux运维工程师面试的题库,涵盖了文件操作、网络配置、计划任务、脚本编程以及RAID知识等多个方面,旨在帮助面试者准备相关技能的考察。"
一、文件操作
1. 查询file1中空行的所在行号,可以使用两种方法:一种是awk命令,通过判断每一行是否为空(/^$/),如果为空则打印行号(NR);另一种是先用grep匹配空行,然后用awk提取行号(FS=":",打印第一列)。
- `awk '{if($0~/^$/) print NR}' file1`
- `grep -n '^$' file1 | awk 'BEGIN{FS=":"}{print $1}'`
2. 查询以abc结尾的行,可以直接使用grep命令。
- `grep 'abc$' file1`
3. 打印file1文件的前3行,可以使用sed的-n选项配合p命令,或者使用head命令。
- `sed -n '1,3p' file1`
- `head -3 file1`
二、网络配置
要将本地80端口的请求转发到8080端口,可以通过iptables的规则设置,这里假设当前主机IP为192.168.2.1。
- `iptables -A PREROUTING -d 124.42.60.109 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.0.18:9000`
三、crontab计划任务
在11月份,每天的6点到12点之间,每隔2小时执行一次/usr/bin/httpd.sh,crontab的表达式应为:
- `06-12/2 * 11 * /usr/bin/httpd.sh`
四、shell脚本
编写shell脚本将/usr/local/test目录下大于100K的文件转移到/tmp目录下,使用for循环遍历目录,通过ls-l获取文件大小并进行比较,满足条件则移动文件。
```bash
#!/bin/bash
for file in `/usr/bin/ls /usr/local/test`
do
if [-f "$file"]; then
if [ $(ls -l "$file" | awk '{print $5}') -gt 10000 ]; then
mv "$file" /tmp/
fi
fi
done
```
五、RAID工作原理及特点
1. RAID0(条带化):数据被分割并同时写入多个磁盘,提高了读写速度。但无数据冗余,一旦一个磁盘故障,所有数据都将丢失。
2. RAID1(镜像):数据在两块磁盘上同步写入,形成镜像,读取速度快且数据安全性高。成本较高,因为需要至少两块磁盘。
3. RAID5(分布式奇偶校验):数据分布在多个磁盘上,同时包含分布式奇偶校验信息,允许一个磁盘故障而不影响数据完整性。读写速度较快,同时提供了数据冗余,但重建故障磁盘时对性能有影响。
这些面试题涵盖了Linux运维工程师所需的基本技能,包括文件操作、网络配置、计划任务、脚本编写和存储管理等,对于准备面试或提升个人技能都有很好的参考价值。
2022-06-20 上传
2020-07-17 上传
2022-10-30 上传
2022-06-21 上传
2021-07-16 上传
2022-06-20 上传
TitanHunter
- 粉丝: 0
- 资源: 2
最新资源
- 平尾装配工作平台运输支撑系统设计与应用
- MAX-MIN Ant System:用MATLAB解决旅行商问题
- Flutter状态管理新秀:sealed_flutter_bloc包整合seal_unions
- Pong²开源游戏:双人对战图形化的经典竞技体验
- jQuery spriteAnimator插件:创建精灵动画的利器
- 广播媒体对象传输方法与设备的技术分析
- MATLAB HDF5数据提取工具:深层结构化数据处理
- 适用于arm64的Valgrind交叉编译包发布
- 基于canvas和Java后端的小程序“飞翔的小鸟”完整示例
- 全面升级STM32F7 Discovery LCD BSP驱动程序
- React Router v4 入门教程与示例代码解析
- 下载OpenCV各版本安装包,全面覆盖2.4至4.5
- 手写笔画分割技术的新突破:智能分割方法与装置
- 基于Koplowitz & Bruckstein算法的MATLAB周长估计方法
- Modbus4j-3.0.3版本免费下载指南
- PoqetPresenter:Sharp Zaurus上的开源OpenOffice演示查看器