2021年04月18日Linux专项练习2
考点1:vi保存并退出
在Linux系统的vi编辑器中,如果不保存对文件进行的修改,应使用( )命令强制退出vi编辑器
- A :q
- B :
wq
- C :q!
- D :!q
解析
显示答案/隐藏答案
正确答案: C考点2:文件操作的唯一依据
文件操作的唯一依据是?
- A 文件名
- B 文件句柄
- C 物理地址
解析
显示答案/隐藏答案
正确答案: B在文件I/O中,要从一个文件读取数据,应用程序首先要调用操作系统函数并传送文件名,并选一个到该文件的路径来打开文件。该函数取回一个顺序号,即文件句柄(file handle),该文件句柄对于打开的文件是唯一的识别依据。要从文件中读取一块数据,应用程序需要调用函数ReadFile,并将文件句柄在内存中的地址和要拷贝的字节数传送给操作系统。当完成任务后,再通过调用系统函数来关闭该文件。
文件句柄应该是windows的叫法,linux叫文件描述符。
考点3:Linux查看物理内存的大小
在 linux 下,如何查看物理内存的大小? ()
- A
cat /dev/mem
- B
cat /proc/meminfo
- C
mem
- D
ps -ef
解析
显示答案/隐藏答案
正确答案: B方式一:free
直观的展示linux系统内存使用及交换区的容量大小等
方式二:top
动态实时查看系统中每一个进程的资源使用情况
方式三:cat /proc/meminfo
方式四:gnome-system-monitor 一个显示最近一段时间内的CPU、内存、交换区及网络使用情况的视图工具。
方式五:ps aux –sort -rss
各个线程的资源使用情况
方式六:vmstat -s
vmstat命令显示实时的和平均的统计,覆盖CPU、内存、I/O等内容。
考点4:sed命令
以下哪些命令可以打印文件(demo.log)中包含ERP的行到标准输出()
- A
sed
‘/ERR/a
'demo.log
- B
sed
‘/ERP/p
‘demo.log
- C
sed
‘/ERP/d
‘demo.log
- D
sed -n
‘/ERP/p
‘demo.log
解析
显示答案/隐藏答案
正确答案: Dsed命令用于行的新增/删除, 行的替换/显示, 搜寻并替换, 直接修改文件。
-n:使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到屏幕上。但如果加上 -n
参数后,则只有经过 sed 特殊处理的那一行才会被列出来。
p:打印,将某个选择的数据印出来。通常 p 会与参数 sed -n 一起用
d:删除
a:新增
sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上
sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的行,完成后把该行发送到屏幕上。sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。
然后回到本题中,
-n 取消默认的输出,从而重定向为ERP输出
-p 打印行
最后是filename文件名
打印文件(demo.log)中包含ERP的行到标准输出。
sed -n ‘/ERP/p’ demo.log
sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。
-n:使用安静(silent)模式。默认情况下,所有的输出行都被打印到屏幕上。
-p:打印,将某个选择的数据印出来。通常 p 会与参数 sed -n 一起用。
-d:删除
-a:新增
Vi编辑器中,怎样将字符AAA全部替换成yyy?
s/AAA/yyy/g
s:取代,通常 s 动作可以搭配正规表示式。例如 1,20s/old/new/g!
g:是行内进行全局替换。
示例:
sed ‘s/aaa/bbb/‘ filea 将filea中的第一个aaa替换为bbb;
sed ‘s/aaa/bbb/g’ filea 将filea中的所有的aaa替换为bbb。
考点5:死锁的必要条件
下面哪些是死锁发生的必要条件?
- A 互斥条件
- B 请求和保持
- C 不可剥夺
- D 循环等待
解析
显示答案/隐藏答案
正确答案: ABCD产生死锁的四个必要条件:
(1) 互斥条件:一个资源每次只能被一个进程使用。
(2) 占有且等待:一个进程因请求资源而阻塞时,对已获得的资源保持不放。
(3)不可强行占有:进程已获得的资源,在末使用完之前,不能强行剥夺。
(4) 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
这四个条件是死锁的必要条件,只要系统发生死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死锁。
考点6:移位运算 十六进制数 幂运算
下列表达式值相同的是哪几项()
- A 1
<<3
- B 0
x0F
& 0x08
- C 2^3(^是幂运算)
- D 3^2(^是幂运算)
解析
显示答案/隐藏答案
正确答案: ABCA. 1左移3位 即1000
B. 0000 1111 & 0000 1000 即0000 1000
C. 2^3 即8 即1000
D. 3^2 即9 即1001
ABC值相同
考点7:vi保存并退出方法
在Linux系统下,你用vi编辑器对文本文件test.txt进行了修改,想保存对该文件所做的修改并正常退出vi编辑器,可以( )。
- A 在命令模式下执行
ZZ
命令 - B 在命令模式下执行
WQ
命令 - C 在末行模式下执行:q!
- D 在末行模式下执行:
wq
解析
显示答案/隐藏答案
正确答案: AD考点8:shell系统调用 ls系统调用
Linux执行ls,会引起哪些系统调用()
- A
nmap
- B
read
- C
execve
- D
fork
解析
显示答案/隐藏答案
正确答案: BCD任何shell都会执行 exec 和 fork
而 ls会执行read
三个加起来
考点9:firmware分析相关命令
下面哪些命令和工具对 firmware 分析有帮助?
- A
binwalk
- B
file
- C
firmware-mod-kit
- D
netstat
解析
显示答案/隐藏答案
正确答案: ABCBinwalk是用于搜索给定二进制镜像文件以获取嵌入的文件和代码的工具,具体来说,它被设计用于识别嵌入固件镜像内的文件和代码。
file命令用来探测给定文件的类型,file命令对文件的检查分为文件系统、魔法幻数检查和语言检查3个过程。
firmware-mod-kit工具的功能和binwalk工具的类似,其实firmware-mod-kit工具在功能上有调用binwalk工具提供的功能以及其他的固件解包工具的整合。