linux测试题总结,Linux运维-第五周-【awk周考试题】总结

7b4edeb1d4d3

image.png

一:简答

1.1:centos6与7启动流程 (4分)

前五步相同:

Centos6

Centos7

1.开机

1.开机

2.bios开机自检

2.bios开机自检

3.MBR引导

3.MBR引导

4.GRUB菜单 选择不同内核 CentOS6进入单用户模式

4.GRUB菜单 选择不同内核 CentOS6进入单用户模式

5.加载内核 /boot加载到内存

5.加载内核 /boot加载到内存

6.运行INIT进程 CentOS6第一个进程

6.运行systemd进程 读取第一个运行程序 ps -ef

7.读取/etc/inittab

7.读取运行级别 /etc/systemd/system/

8.串行 读取/etc/rc.sysinit 初始化系统 设置主机名 ip地址

8.并行 初始化系统/etc/systemd/system

9.根据运行级别启动相应脚本软件(串行)

9.启动服务

10.启动minggetty登录界面 运行login

10.启动getty登录界面 运行login

1.2:centos6与7运行级别(4分)

Centos 6

Centos 7

0

关机

关机 poweroff.target

1

单用户

救援模式 rescue.target

2

没有网络的多用户

多用户模式 multi-user.target

3

完全多用户

多用户模式 multi-user.target

4

待开发 保留

多用户模式 multi-user.target

5

图形界面模式

图形界面模式 graphical.target

6

重启

重启 reboot.target

1.3:什么是inode,什么是block(2分)

含义:

inode (index node)

1.索引节点inode号码

2.inode空间 存放文件属性信息(大小 所有者 权限 文件类型 硬连接数 时间)和block的位置,但是文件名没有存放在这里

block 数据块

block 用来存放文件的内容

特点:

inode: (ls -i查看目录inode号)

1.256字节 (磁盘分区大于500MB)

2.inode在同一个分区(文件系统)中是唯一的

3.创建1个非空的文件需要占用1个inode和至少一个block

block:

1.block大小是4K

2.文件比较小的,剩余的将无法使用

3.文件比较大的,占用多个block

查看整体情况:

block 一共有多 还剩多少(查看磁盘空间使用情况)

df -h 以人类可读的形式

inode一共有多少 还剩多少

df -i inode剩余

1.4:写出20个系统命令,并简述作用(10分)

ls 全拼list,功能是列出目录的内容及其内容属性信息。

cd 全拼change directory,功能是从当前工作目录切换到指定的工作目录。

cp 全拼copy,其功能为复制文件或目录。

find 查找的意思,用于查找目录及目录下的文件。

mkdir 全拼make directories,其功能是创建目录。

mv 全拼move,其功能是移动或重命名文件。

pwd 全拼print working directory,其功能是显示当前工作目录的绝对路径。

rm 全拼remove,其功能是删除一个或多个文件或目录。

touch 创建新的空文件,改变已有文件的时间戳属性。

tree 功能是以树形结构显示目录下的内容。

more 分页显示文件内容。

less 分页显示文件内容,more命令的相反用法。

head 显示文件内容的头部。

tail 显示文件内容的尾部。

cut 将文件的每一行按指定分隔符分割并输出。

uname 显示操作系统相关信息的命令。

hostname 显示或者设置当前系统的主机名。

chattr 改变文件的扩展属性。

lsattr 查看文件扩展属性。

file 显示文件的类型。

1.5: 软硬链接区别 (4分)

如何创建:

硬链接 ln

软链接 ln -s

含义:

硬链接ln:

在同一分区中inode号码相同的,节点相同的文件,超市前后门(多个入口)

软链接:

相当于快捷方式,存放存放源文件的位置,inode节点号与源文件不同

特点:

1.不能对目录创建硬链接,但可以创建软链接,对目录的软链接会被经常用到

2.软链接可以跨文件系统,硬链接不可以跨文件系统

怎么没的 (源文件 软链接 硬链接 与删除)

1.删除软链接文件,对源文件及硬链接文件没有影响

2.删除文件的硬链接文件,对源文及软链接文件没有影响

3.删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失效(闪烁)

4.同时删除源文及硬链接文件,整个文件才会被真正的删除

1.6:raid0 raid1特点(4分)

Raid级别

需要几块盘

存取速度

容量

冗余

安全性

使用场景

举例

Raid0

至少1快

读写都快

所有硬盘容量的总和

0

差,损失1块全不能用

不要安全只求速度

数据块从库,存储从库

Raid1

只能2块

写入慢,读取正ok

总量的一半

100%

好,坏1块还可以使用,有备份

只追求安全性,对速度无要求

系统盘,监控服务器

Raid5

最少3块

写入慢,读取正常

损失一块盘容量

有1块盘

正常,最多坏1块

对速度安全,对速度要求不高

普遍数据库,存储访问量不高

Raid10

最少4块

读写都块

总量的一半

可以损坏一半

好,坏1块还可以使用,有备份

安全和性能都要

高并发或高访问量,数据库主库 存储

1.7:磁盘分区常见方案(6分)

企业磁盘分区规则

/boot引导分区

swap交换分区

/ 分区

/data分区

通常情况

200M~1G

小于8G给1.5倍,大于8G 最多给8G

剩余多少给多少

数据重要的情况

200M~1G

小于8G给1.5倍,大于8G 最多给8G

20~200G

余下全部分给/data

大网站数据重要的情况

200M~1G

小于8G给1.5倍,大于8G 最多给8G

20~200G

剩余保留,谁用谁分

1.8: 单引号,双引号,不加引号区别(3分)

区别

单引号

所见即所得

双引号

解析命令,但是需要与或$( )结合

不加引号

与双引号类似,支持花括号(通配符)

反引号

== $( )与后者作用相同,与双引号类似解析命令

二:填空

2.1:写出一下特殊符号的含义(一种即可)(每个0.5分)

#

配置文件注释

root用户命令提示符

;

命令结束,连续不同命令的分隔符

!

逻辑运算中的“非”(not)

~ 当前用户家目录

.(点) 当前目录

.. 上一级目录

\- 切换上一次的目录

\` ` 返回上一级目录

\> 标准输出重定向,先清空文件内容再写入

\>> 标准输出追加重定向,追加内容到文件尾部

2> 标准错误输出重定向,先清空文件然后把错误信息写入文件中

2>> 标准追加错误输出重定向, 把错误信息追加到文件结尾

2.2:写出一下正则表达式的含义(每个0.5分)

. 匹配任意字符 类似通配符的问号 不匹配空行

* 逐行匹配,前1个字符连续出现0次或0次以上

.* 表示所有内容

^ 以...开头的行

$ 以...结尾的行

^$ 空行

[ ] 匹配[]集合内的任意一个字符

[^ ] 取反,不包含[]集合内的任意一个字符

2.3:写出一下扩展正则表达式的含义(每个0.5分)

+ 匹配前一个字符1次或1次以上

? 匹配前一个字符0次或1次

| 或者

{ } 匹配字符最少几次,最多几次

三:命令

3.1:找出/etc/passwd文件中以root开头,以bash结尾的行,并显示行号(2分)

grep -n '^root.*bash$' /etc/passwd

3.2:匹配file文件中foo那行及上下5行、显示foo及前5行、显示foo及后5行(2分)

grep -C 5 'foo' file 上下五行

grep -B 5 'foo' file 上五行

grep -A 5 'foo' file 下五行

3.3:打印file.txt文件中的第10行(2分)

sed -n '10p' file.txt

3.4:查询文件oldboy.txt的第4-6行(2分)

sed -n '4,6p' file.txt

3.5:删除文件oldboy.txt中所有带有数字的行(2分)

sed -i '/[0-9]/d' file.txt

3.6:将文件中的oldboy全部替换为oldgirl,同时将49000448改为31333741。(2分)

sed -e 's#oldboy#oldgirl#g;s#49000448#31333741#g' file.txt

3.7:把/目录下所有以.txt结尾的文件中包含oldgirl的字符串全部替换为oldboy. (2分)

grep 'oldgirl' `find /-type f -name '*.txt'`|sed -i 's#oldgirl#oldboy#g'

3.8:使用awk取出/etc/passwd第一列数据也就是取出

用户名。(2分)

awk -F: '{print $1}' /etc/passwd

请看下题:

cat reg.txt

Zhang Dandan 41117397 :250:100:175

Zhang Xiaoyu 390320151 :155:90:201

Meng Feixue 0042789 :250:60:50

Wu Waiwai 70271111 :250:80:75

Liu Bingbing 41117483 :250:100:175

Wang Xiaoai 3515064655 :50:95:135

3.9:用awk获取reg.txt文件中第三行的倒数第二列字段(2分)

awk 'NR==3{print $(NF-1)}' reg.txt

3.10:显示文件reg.txt所有以41开头的ID号码的人的全名和ID号码(2分)

awk '$3~/^41/{print $1,$2,$3}' reg.txt

3.11:显示小雨的姓名与id号(2分)

awk '$2~/Xiaoyu/{print $1,$2,$3}' reg.txt

3.12:显示Xiaoyu的捐款.每个值时都有以$开头.如$520$200$135 (2分)

awk '$NF{print $4}' reg.txt |tr ':' '$'

awk -F'[: ]+' -vOFS="$" '$2~/Xiaoyu/{print "$"$4,$5,$6}' reg.txt

awk -F'[: ]+' '$2~/Xiaoyu/{gsub(/:/,"$");print $NF}' reg.txt

3.13:计算第一次捐款的总额(2分)

awk -F: '{i=i+$2}END{print i}' reg.txt

3.14:使用awk计算0加到100(2分)

seq 100|awk '{i=i+$1}END{print i}'

3.15:计算/etc/ssh/sshd.config文件中所有以#开头的行数(2分)

awk '$1~/^#/{i=i+1}END{print i}' /etc/ssh/sshd_config

3.16:取出/etc/fstab 权限(2分)

16777282 -rw-r--r--. 1 root root 501 Mar 26 13:52 /etc/fstab

ll -id /etc/fstab |awk -F'[ .]' '{print $2}'

3.17:查找/oldboy下最近7天修改过、大于10k,小于10M的文件复制到/tmp下(两种方法)(4分)

find /tmp/ -type f -size +1k -size -10M -mtime -7 |xargs -i cp {} /tmp/

find /tmp/ -type f -size +1k -size -10M -mtime -7 -exec cp {} /tmp/ \;

\cp `find /tmp/ -type f -size +1k -size -10M -mtime -7` /tmp/

3.18:调换/etc/passwd 第一列和最后一列内容(至少2种方法)(4分)

abc:x:1010:1000::/home/abc:/bin/bash

awk -F: -vOFS=":" '{u=$1;$1=$NF;$NF=u;print $0}' /etc/passwd

sed -r 's#(^.*:)(.*)(/.*)#\3 \1#g' /etc/passwd

3.19:查找/etc下以.conf结尾的文件并以时间命名打包到/tmp下(两种方法)(4分)

find /etc/ -type f -name '*.conf' -exec tar zcf /tmp/a.tar.gz {} +

find /etc/ -type f -name '*.conf'|xargs tar zcf /tmp/a.tar.gz {} +

tar zcf /tmp/.a.tar.gz `find /etc/ -type f -name '*.conf'`

3.20:取ip地址(三种方法)(6分)

inet 10.0.0.201/24 brd 10.0.0.255 scope global eth0

ip a s eth0|sed -nr '3s#^.*t (.*)/.*#\1#gp' #用sed

ip a s eth0|awk -F"[ /]+" 'NR==3{print $3}' #用awk

ip a s eth0|sed -n '3p'|awk -F'[ /]+' '{print$3}' #sed+awk

ip a s eth0|grep 'inet '|sed -r 's#^.*t (.*)/.*#\1#g' #grep+sed

ip a s eth0|grep 'inet '|awk -F'[ /]+' '{print $3}' #grep+awk

3.21:找出/oldboy下面以.txt结尾的文件把里面的oldboy替换为oldgirl(三种方法) (6分)

sed -i 's#oldboy#oldgirl#g' `find /oldboy/ -type f -name '*.txt'`

awk 'gsub(/oldboy/,"oldgirl"){print $0}' `find /oldboy/ -type f -name '*.txt'`

grep 'oldboy' `find /oldboy/ -type f -name '*.txt'`|sed 's#oldboy#oldgirl#g'

四:翻译(每个2分)

You have mail in /var/spool/mail/root

你有一封来自此目录的邮件

Can't open file for writing

不能打开文件修改

unexpected EOF while looking for matching `"'

找不到符号""

Name or service not known

找不到域名

user 'oldboy' already exists

oldboy用户已存在

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值