Linux运维面试题-命令篇

目录

文件/目录/路径相关

问题一:查看文件内容有哪些命令可以使用?

问题二:当前目录、上层目录用什么表示?主目录用什么表示? 

问题三:ls 命令执行什么功能?可以带哪些参数,有什么区别?

问题四:目录创建用什么命令?创建文件用什么命令?复制文件用什么命令?

问题五:文件权限修改用什么命令?格式是怎么样的?

问题六:终端是哪个文件夹下的哪个文件?黑洞文件是哪个文件夹下的哪个命令?

问题七:用什么命令对一个文件的内容进行统计?(行号、单词数、字节数)

问题八:搜索文件用什么命令? 格式是怎么样的? 

问题九:打印出当前的目录栈,命令是?

进程/任务相关

Q1:怎么查看当前进程?怎么执行退出?怎么查看当前路径?

Q2:Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?

Q3:怎么使一个命令在后台运行?

Q4:你的系统目前有许多正在运行的任务,在不重启机器的条件下,有什么方法可以把所有正在运行的进程移除呢?

网络相关

其它命令相关

Question1:查看命令帮助的方法?

Question2:怎么清屏?怎么退出当前命令?怎么执行睡眠?怎么查看当前用户 id?

Question3:如何建立软链接(快捷方式),以及硬链接的命令?

Question4:Linux 下命令有哪几种可使用的通配符?分别代表什么含义? 怎么使用?

Question5:怎么查看系统支持的所有信号?

Question6:查看各类环境变量用什么命令?

Question7:怎么对命令进行取别名?

Question8:列出当前系统支持的所有命令的列表?

Question9:哪一个bash内置命令能够进行数学运算?

Question10:哪grep命令的作用,如何忽略大小写?

Question11:awk 如何使用,举例说明?


文件/目录/路径相关


问题一:查看文件内容有哪些命令可以使用?


答案:
cat 文件名 #显示全部文件内容
more 文件名 #分页显示文件内容 (cat file_name.txt | more 一页一页地查看一个大文件的内容)
less 文件名 #与 more 相似,更好的是可以往前翻页
tail 文件名 #仅查看尾部,还可以指定行数
head 文件名 #仅查看头部,还可以指定行数

问题二:当前目录、上层目录用什么表示?主目录用什么表示? 
 

答案:
绝对路径:如/proc/version
当前目录和上层目录:./  ../
主目录:~/

问题三:ls 命令执行什么功能?可以带哪些参数,有什么区别?


答案:
ls 执行的功能:列出指定目录中的目录,以及文件
参数:
-a 所有文件 
-l 详细信息,包括大小字节数,可读可写可执行的权限等
 

问题四:目录创建用什么命令?创建文件用什么命令?复制文件用什么命令?
 

答案:
创建目录:mkdir
创建文件:典型的如 touch,vi 也可以创建文件,其实只要向一个不存在的文件输出,都会创建文件
复制文件:cp test1txt /temp/test2.txt


问题五:文件权限修改用什么命令?格式是怎么样的?
 

答案:
文件权限修改:chmod
格式如下:$ chmod u+x file 给 file 的属主增加执行权限
$ chmod 751 file 给 file 的ower分配读、写、执行(7)的权限,给 file 的group分配读、给other分配执行权限

问题六:终端是哪个文件夹下的哪个文件?黑洞文件是哪个文件夹下的哪个命令?


答案:
终端  /dev/tty

黑洞文件  /dev/null

问题七:用什么命令对一个文件的内容进行统计?(行号、单词数、字节数)
 

答案:

wc 命令 - c 统计字节数 - l 统计行数 - w 统计字数。

问题八:搜索文件用什么命令? 格式是怎么样的? 
 

答案:

whereis 加参数与文件名(whereis 指令会在特定目录中查找符合条件的文件,可查找二进制文件、说明文档,源文件)

locate 只加文件名

find / -name "filename*"
which 只能查可执行文件

问题九:打印出当前的目录栈,命令是?


答案:

使用Linux 命令dirs可以将当前的目录栈打印出来。


 

进程/任务相关

Q1:怎么查看当前进程?怎么执行退出?怎么查看当前路径?


查看当前进程:ps
执行退出:exit
查看所有进程:ps -aux
查看特定进程:ps -aux | grep pid

Q2:Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?

D 不可中断 Uninterruptible(usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核 2.6 开始无效)
X 死掉的进程

Q3:怎么使一个命令在后台运行?

假设你有一个脚本或命令 my_script.sh,你希望它在后台运行。可以这样做:

./my_script.sh &
 

使用 jobs 命令查看当前终端会话中的所有后台任务(或者job -l)

将任务移到后台运行:bg
使用 fg 命令将后台任务移到前台运行:fg %1

终止进程用什么命令?  kill -9 pid

Q4:你的系统目前有许多正在运行的任务,在不重启机器的条件下,有什么方法可以把所有正在运行的进程移除呢?

使用linux命令 ’disown -r ’可以将所有正在运行的进程移除。



网络相关

使用什么命令查看网络是否连通?
答案:
netstat

ping 或者 curl

使用什么命令查看 ip 地址及接口信息?

答案:

ifconfig -a;ip a

tcpdump的作用和用法?

tcpdump 是一个强大的网络数据包分析工具,用于捕获和分析网络上的流量。它能够详细显示通过网络接口传输的TCP/IP及其他数据包内容,对网络管理和问题排查非常有用。

捕获特定接口(网卡)的流量:sudo tcpdump -i eth0

将捕获的数据保存到文件:sudo tcpdump -i eth0 -w capture.pcap
保存到 capture.pcap 文件中,之后可以使用 tcpdump 或其他工具如 Wireshark 来分析

捕获特定主机的流量:sudo tcpdump -i eth0 host 192.168.1.1

捕获特定端口的流量:sudo tcpdump -i eth0 port 80

捕获发往特定网络的流量:sudo tcpdump -i eth0 net 192.168.1.0/24

更详细的输出:sudo tcpdump -i eth0 -v 或 sudo tcpdump -i eth0 -vv 或 sudo tcpdump -i eth0 -vvv
 

Wireshark 提供了丰富的功能来分析网络流量。以下是一些主要的分析功能:

  1. 数据包列表: Wireshark 显示捕获的每个数据包,并提供详细的信息,包括时间戳、源和目的地址、协议类型、长度等。

  2. 协议分析: Wireshark 可以解析几乎所有已知的网络协议,如 Ethernet、IP、TCP、UDP、HTTP、DNS 等。每个数据包都被分解成协议层,显示详细的字段信息。

  3. 过滤数据包: 使用显示过滤器可以仅显示符合特定条件的数据包。例如,过滤显示 HTTP 流量:过滤显示特定 IP 地址的流量:

  4. 追踪流: 你可以追踪 TCP 流,以查看源和目的主机之间的完整对话。右键点击一个 TCP 数据包,选择 Follow -> TCP Stream

  5. 图表和统计信息: Wireshark 提供各种统计和图表功能,例如协议层次统计、IO 图表、流量图等。你可以在菜单栏中找到 Statistics,然后选择所需的统计功能。

  6. 解密流量: 如果你有解密密钥,Wireshark 可以解密一些加密的流量(如 HTTPS)。你需要在 Edit -> Preferences -> Protocols 中配置解密设置。

  7. 故障排除: Wireshark 可以帮助你识别网络问题,如丢包、重传、高延迟等。通过分析数据包的时间戳和序列号,可以发现并定位网络性能问题。

其它命令相关

Question1:查看命令帮助的方法?

answer1:

man cmd

cmd --help 或者 cmd -h

Question2:怎么清屏?怎么退出当前命令?怎么执行睡眠?怎么查看当前用户 id?


answer2:
清屏:clear
退出当前命令:ctrl+c 彻底退出
执行睡眠 :ctrl+z 挂起当前进程fg 恢复后台
查看当前用户 id:”id“:查看显示目前登陆账户的 uid 和 gid 及所属分组及用户名

Question3:如何建立软链接(快捷方式),以及硬链接的命令?


answer3:
软链接:ln -s slink source
硬链接:ln link source

Question4:Linux 下命令有哪几种可使用的通配符?分别代表什么含义? 怎么使用?

answer4:

1.星号 (*)含义:匹配零个或多个字符

ls *.txt    # 匹配所有以 .txt 结尾的文件
ls file*    # 匹配所有以 file 开头的文件

2.问号 (?):匹配单个任意字符

ls file?.txt    # 匹配 file1.txt, file2.txt 等,但不匹配 file10.txt
ls ?.txt        # 匹配 a.txt, b.txt 等

3.方括号 ([ ]) 含义:匹配方括号中列出的任意单个字符

ls file[123].txt    # 匹配 file1.txt, file2.txt, file3.txt
ls file[a-c].txt    # 匹配 filea.txt, fileb.txt, filec.txt

4.大括号 ({ })含义:匹配大括号中列出的任意一组字符,通常用于生成一组文件名或路径。

mkdir {dir1,dir2,dir3}    # 创建 dir1, dir2, dir3 目录
touch file{1,2,3}.txt     # 创建 file1.txt, file2.txt, file3.txt


 

Question5:怎么查看系统支持的所有信号?

kill -l 会列出所有可用的信号及其对应的编号

Question6:查看各类环境变量用什么命令?

查看所有 env


Question7:怎么对命令进行取别名?

alias la='ls -a'

Question8:列出当前系统支持的所有命令的列表?

使用命令compgen ­-c,可以打印出所有支持的命令列表

Question9:哪一个bash内置命令能够进行数学运算?

命令let 可以进行整型数的数学运算

Question10:哪grep命令的作用,如何忽略大小写?

grep 是一个强大的命令行工具,用于在文件或文本中搜索指定的模式(字符串或正则表达式)

#在多个文件中搜索字符串
grep "error" log1.txt log2.txt log3.txt

-i:忽略大小写。

-r-R:递归地搜索目录中的文件。

Question11:awk 如何使用,举例说明?

awk 提供了强大的文本处理能力,通过模式匹配和操作,可以灵活地从文本数据中提取和处理信息

data.txt的内容:
John Doe 30
Jane Smith 25
Alice Johnson 28


#打印文件中的第一列和第三列
awk '{ print $1, $3 }' data.txt

#打印包含 "Jane" 的行
awk '/Jane/ { print }' data.txt

#打印年龄大于27的行:
awk '$3 > 27 { print }' data.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值