2019年常见的Linux面试题及答案解析,哪些你还不会?

简介: 45道Linux面试题,你都会了没?

Linux 面试题

1、绝对路径用什么符号表示?当前目录、上层目录用什么表示?主目录用什么表示? 切换目录用什么命令?
2、怎么查看当前进程?怎么执行退出?怎么查看当前路径?
3、怎么清屏?怎么退出当前命令?怎么执行睡眠?怎么查看当前用户id?查看指定帮助用什么命令?
4、Ls 命令执行什么功能? 可以带哪些参数,有什么区别?
5、建立软链接(快捷方式),以及硬链接的命令。
6、目录创建用什么命令?创建文件用什么命令?复制文件用什么命令?
7、查看文件内容有哪些命令可以使用?
8、随意写文件命令?怎么向屏幕输出带空格的字符串,比如”helloworld”?
9、终端是哪个文件夹下的哪个文件?黑洞文件是哪个文件夹下的哪个命令?
10、移动文件用哪个命令?改名用哪个命令?
11、复制文件用哪个命令?如果需要连同文件夹一块复制呢?如果需要有提示功能呢?
12、删除文件用哪个命令?如果需要连目录及目录下文件一块删除呢?删除空文件夹用什么命令?
13、Linux 下命令有哪几种可使用的通配符?分别代表什么含义?
14、用什么命令对一个文件的内容进行统计?(行号、单词数、字节数)
15、Grep 命令有什么用? 如何忽略大小写? 如何查找不含该串的行?
16、Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?
17、怎么使一个命令在后台运行?
18、利用 ps 怎么显示所有的进程? 怎么利用 ps 查看指定进程的信息?
19、哪个命令专门用来查看后台任务?
20、把后台任务调到前台执行使用什么命令?把停下的后台任务在后台执行起来用什么命令?
21、终止进程用什么命令? 带什么参数?
22、怎么查看系统支持的所有信号?
23、搜索文件用什么命令? 格式是怎么样的?
24、查看当前谁在使用该主机用什么命令? 查找自己所在的终端信息用什么命令?
25、使用什么命令查看用过的命令列表?
26、使用什么命令查看磁盘使用空间? 空闲空间呢?
27、使用什么命令查看网络是否连通?
28、使用什么命令查看 ip 地址及接口信息?
29、查看各类环境变量用什么命令?
30、通过什么命令指定命令提示符?
31、查找命令的可执行文件是去哪查找的? 怎么对其进行设置及添加?
32、通过什么命令查找执行命令?
33、怎么对命令进行取别名?
34、du 和 df 的定义,以及区别?
35、awk 详解。
36、当你需要给命令绑定一个宏或者按键的时候,应该怎么做呢?
37、如果一个 linux 新手想要知道当前系统支持的所有命令的列表,他需要怎么做?
38、如果你的助手想要打印出当前的目录栈,你会建议他怎么做?
39、你的系统目前有许多正在运行的任务,在不重启机器的条件下,有什么方法可以把所有正在运行的进程移除呢?
40、bash shell 中的 hash 命令有什么作用?
41、哪一个 bash 内置命令能够进行数学运算。
42、怎样一页一页地查看一个大文件的内容呢?
43、数据字典属于哪一个用户的?
44、怎样查看一个 linux 命令的概要与用法?假设你在/bin 目录中偶然看到一个你从没见过的的命令,怎样才能知道它的作用和用法呢?
45、使用哪一个命令可以查看自己文件系统的磁盘空间配额呢?
image

Linux 面试题答案解析

1、绝对路径用什么符号表示?当前目录、上层目录用什么表示?主目录用什么表示? 切换目录用什么命令?

答案:
绝对路径: 如/etc/init.d
当前目录和上层目录: ./ ../
主目录: ~/
切换目录: cd

2、怎么查看当前进程?怎么执行退出?怎么查看当前路径?

答案:
查看当前进程: ps
执行退出: exit
查看当前路径: pwd

3、怎么清屏?怎么退出当前命令?怎么执行睡眠?怎么查看当前用户 id?查看指定帮助用什么命令?

答案:
清屏: clear
退出当前命令: ctrl+c 彻底退出
执行睡眠 : ctrl+z 挂起当前进程 fg 恢复后台
查看当前用户 id: ”id“:查看显示目前登陆账户的 uid 和 gid 及所属分组及用户名
查看指定帮助: 如 man adduser 这个很全 而且有例子; adduser --help 这个告诉你一些常用参数; info adduesr;

4、Ls 命令执行什么功能? 可以带哪些参数,有什么区别?

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

5、建立软链接(快捷方式),以及硬链接的命令。

答案:
软链接: ln -s slink source
硬链接: ln link source

6、目录创建用什么命令?创建文件用什么命令?复制文件用什么命令?

答案:
创建目录: mkdir
创建文件:典型的如 touch,vi 也可以创建文件,其实只要向一个不存在的文件输出,都会创建文件
复制文件: cp 7. 文件权限修改用什么命令?格式是怎么样的?
文件权限修改: chmod
格式如下:
chmodu+xfile 给 file 的属主增加执行权限 chmod 751 file 给 file 的属主分配读、写、执行(7)的权限,给 file 的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
chmodu=rwx,g=rx,o=xfile 上例的另一种形式 chmod =r file 为所有用户分配读权限
chmod444file 同上例 chmod a-wx,a+r file 同上例
$ chmod -R u+r directory 递归地给 directory 目录下所有文件和子目录的属主分配读的权限

7、查看文件内容有哪些命令可以使用?

答案:
vi 文件名 #编辑方式查看,可修改
cat 文件名 #显示全部文件内容
more 文件名 #分页显示文件内容
less 文件名 #与 more 相似,更好的是可以往前翻页
tail 文件名 #仅查看尾部,还可以指定行数
head 文件名 #仅查看头部,还可以指定行数

8、随意写文件命令?怎么向屏幕输出带空格的字符串,比如”hello world”?

答案:
写文件命令:vi
向屏幕输出带空格的字符串:echo hello world

9、终端是哪个文件夹下的哪个文件?黑洞文件是哪个文件夹下的哪个命令?

答案:
终端 /dev/tty
黑洞文件 /dev/null

10、移动文件用哪个命令?改名用哪个命令?

答案:
mv mv

11、复制文件用哪个命令?如果需要连同文件夹一块复制呢?如果需要有提示功能呢?

答案:
cp cp -r ????

12、删除文件用哪个命令?如果需要连目录及目录下文件一块删除呢?删除空文件夹用什么命令?

答案:
rm rm -r rmdir

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

答案:
“?”可替代单个字符。
“*”可替代任意多个字符。
方括号“[charset]”可替代 charset 集中的任何单个字符,如[a-z],[abABC]

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

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

15、Grep 命令有什么用? 如何忽略大小写? 如何查找不含该串的行?

答案:
是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。
grep [stringSTRING] filename grep 1 filename
image

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

答案:
(1)不可中断状态:进程处于睡眠状态,但是此刻进程是不可中断的。不可中断,指进程不响应异步信号。
(2)暂停状态/跟踪状态:向进程发送一个 SIGSTOP 信号,它就会因响应该信号 而进入 TASK_STOPPED 状态;当进程正在被跟踪时,它处于 TASK_TRACED 这个特殊的状态。正被跟踪”指的是进程暂停下来,等待跟踪它的进程对它进行操作。
(3)就绪状态:在 run_queue 队列里的状态
(4)运行状态:在 run_queue 队列里的状态
(5)可中断睡眠状态:处于这个状态的进程因为等待某某事件的发生(比如等待socket 连接、等待信号量),而被挂起
(6)zombie 状态(僵尸):父亲没有通过 wait 系列的系统调用会顺便将子进程的尸体(task_struct)也释放掉
(7)退出状态
D 不可中断 Uninterruptible(usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核 2.6 开始无效)
X 死掉的进程

17、怎么使一个命令在后台运行?

答案:
一般都是使用 & 在命令结尾来让程序自动运行。(命令后可以不追加空格)

18、利用 ps 怎么显示所有的进程? 怎么利用 ps 查看指定进程的信息?

答案:
ps -ef (system v 输出)
ps -aux bsd 格式输出
ps -ef | grep pid

19、哪个命令专门用来查看后台任务?

答案:
job -l

20、把后台任务调到前台执行使用什么命令?把停下的后台任务在后台执行起来用什么命令?

答案:
把后台任务调到前台执行 fg
把停下的后台任务在后台执行起来 bg

21、终止进程用什么命令? 带什么参数?

答案:
kill -s <信息名称或编号> 或 kill [-l <信息编号>]
kill-9 pid

22、怎么查看系统支持的所有信号?

答案:
kill -l

23、搜索文件用什么命令? 格式是怎么样的?

答案:
find <指定目录> <指定条件> <指定动作>
whereis 加参数与文件名
locate 只加文件名
find 直接搜索磁盘,较慢。
find / -name "string*"

24、查看当前谁在使用该主机用什么命令? 查找自己所在的终端信息用什么命令?

答案:
查找自己所在的终端信息:who am i
查看当前谁在使用该主机:who

25、使用什么命令查看用过的命令列表?

答案:
history

26、使用什么命令查看磁盘使用空间? 空闲空间呢?

答案:
df -hl
文件系统 容量 已用 可用 已用% 挂载点

Filesystem Size Used Avail Use% Mounted on /dev/hda2 45G 19G 24G
44% /
/dev/hda1 494M 19M 450M 4% /boot

27、使用什么命令查看网络是否连通?

答案:
netstat

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

答案:
ifconfig

29、查看各类环境变量用什么命令?

答案:
查看所有 env
查看某个,如 home: env $HOME

30、通过什么命令指定命令提示符?

答案:
u:显示当前用户账号
h:显示当前主机名
W:只显示当前路径最后一个目录
w:显示当前绝对路径(当前用户目录会以~代替)
$PWD:显示当前全路径
$:显示命令行’$'或者’#'符号
#:下达的第几个命令
d:代表日期,格式为 week day month date,例如:"MonAug1"
t:显示时间为 24 小时格式,如:HH:MM:SS
T:显示时间为 12 小时格式
A:显示时间为 24 小时格式:HH:MM
v:BASH 的版本信息 如 export PS1=’[u@hw#]$‘

31、查找命令的可执行文件是去哪查找的? 怎么对其进行设置及添加?

答案:
whereis -bfmsu-M <目录>...[文件...]
补充说明:whereis 指令会在特定目录中查找符合条件的文件。这些文件的烈性应属于原始代码,二进制文件,或是帮助文件。
-b 只查找二进制文件。
-B <目录> 只在设置的目录下查找二进制文件。 -f 不显示文件名前的路径名称。
-m 只查找说明文件。
-M <目录> 只在设置的目录下查找说明文件。-s 只查找原始代码文件。
-S <目录> 只在设置的目录下查找原始代码文件。 -u 查找不包含指定类型的文件。
w -h ich 指令会在 PATH 变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
-n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p 与-n 参数相同,但此处的包括了文件的路径。 -w 指定输出时栏位的宽度。
-V 显示版本信息

32、通过什么命令查找执行命令?

答案:
which 只能查可执行文件
whereis 只能查二进制文件、说明文档,源文件等。欢迎大家关注我的公种浩【程序员追风】,2019年多家公司java面试题整理了1000多道400多页pdf文档,文章都会在里面更新,整理的资料也会放在里面。
image

33、怎么对命令进行取别名?

答案:
alias la='ls -a'

34、du 和 df 的定义,以及区别?

答案:
du 显示目录或文件的大小
df 显示每个<文件>所在的文件系统的信息,默认是显示所有文件系统。(文件系统分配其中的一些磁盘块用来记录它自身的一些数据,如 i 节点,磁盘分布图,间接块,超级块等。这些数据对大多数用户级的程序来说是不可见的,通常称为 Meta Data。) du 命令是用户级的程序,它不考虑 Meta Data,而 df命令则查看文件系统的磁盘分配图并考虑 Meta Data。
df 命令获得真正的文件系统数据,而 du 命令只查看文件系统的部分情况。

35、awk 详解。

答案:

awk '{pattern + action}' {
    filenames
}
#cat /etc/passwd |awk -F ':' '{print 1"t"7}' //-F 的意思是以':'分隔 root
/bin/bash
daemon /bin/sh 搜索/etc/passwd 有 root 关键字的所有行
#awk -F: '/root/' /etc/passwd root:x:0:0:root:/root:/bin/bash

36、当你需要给命令绑定一个宏或者按键的时候,应该怎么做呢?

答案:
可以使用 bind 命令,bind 可以很方便地在 shell 中实现宏或按键的绑定。在进行按键绑定的时候,我们需要先获取到绑定按键对应的字符序列。
比如获取 F12 的字符序列获取方法如下:先按下 Ctrl+V,然后按下 F12 .我们就可以得到 F12 的字符序列 ^[[24~。
接着使用 bind 进行绑定。

[root@localhost ~]# bind ‘”e[24~":"date"'

注意:相同的按键在不同的终端或终端模拟器下可能会产生不同的字符序列。
【附】也可以使用 showkey -a 命令查看按键对应的字符序列。

37、如果一个 linux 新手想要知道当前系统支持的所有命令的列表,他需要怎么做?

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

[root@localhost ~]$ compgen -c
l.
ll
ls
which
if
then else
elif
fi
case
esac
for
select
while
until
do
done
…

38、如果你的助手想要打印出当前的目录栈,你会建议他怎么做?

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

[root@localhost ~]# dirs
/usr/share/X11

【附】:目录栈通过 pushd popd 来操作。

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

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

40、bash shell 中的 hash 命令有什么作用?

答案:
linux 命令’hash’管理着一个内置的哈希表,记录了已执行过的命令的完整路径,用该命令可以打印出你所使用过的命令以及执行的次数。

[root@localhost ~]# hash
hits command
2 /bin/ls
2 /bin/su

41、哪一个 bash 内置命令能够进行数学运算。

答案:
bash shell 的内置命令 let 可以进行整型数的数学运算。

#! /bin/bash
…
…
let c=a+b
…
…

42、怎样一页一页地查看一个大文件的内容呢?

答案:
通过管道将命令”cat file_name.txt” 和 ’more’ 连接在一起可以实现这个需要.

[root@localhost ~]# cat file_name.txt | more

43、数据字典属于哪一个用户的?

答案:
数据字典是属于’SYS’用户的,用户‘SYS’ 和 ’SYSEM’是由系统默认自动创建的

44、怎样查看一个 linux 命令的概要与用法?假设你在/bin 目录中偶然看到一个你从没见过的的命令,怎样才能知道它的作用和用法呢?

答案:
使用命令 whatis 可以先出显示出这个命令的用法简要,比如,你可以使用 whatiszcat 去查看‘zcat’的介绍以及使用简要。

[root@localhost ~]# whatis zcat
zcat [gzip](1) – compress or expand files

45、使用哪一个命令可以查看自己文件系统的磁盘空间配额呢?

答案:
使用命令 repquota 能够显示出一个文件系统的配额信息
【附】只有 root 用户才能够查看其它用户的配额。

最后

欢迎大家一起交流,喜欢文章记得关注我点个赞哟,感谢支持!


  1. string
相关文章
|
3月前
|
Web App开发 缓存 前端开发
浏览器常见面试题目及详细答案解析
本文围绕浏览器常见面试题及答案展开,深入解析浏览器组成、内核、渲染机制与缓存等核心知识点。内容涵盖浏览器的主要组成部分(如用户界面、呈现引擎、JavaScript解释器等)、主流浏览器内核及其特点、从输入URL到页面呈现的全过程,以及CSS加载对渲染的影响等。结合实际应用场景,帮助读者全面掌握浏览器工作原理,为前端开发和面试提供扎实的知识储备。
160 4
|
3月前
|
存储 安全 Java
2025 最新史上最全 Java 面试题独家整理带详细答案及解析
本文从Java基础、面向对象、多线程与并发等方面详细解析常见面试题及答案,并结合实际应用帮助理解。内容涵盖基本数据类型、自动装箱拆箱、String类区别,面向对象三大特性(封装、继承、多态),线程创建与安全问题解决方法,以及集合框架如ArrayList与LinkedList的对比和HashMap工作原理。适合准备面试或深入学习Java的开发者参考。附代码获取链接:[点此下载](https://pan.quark.cn/s/14fcf913bae6)。
1041 48
|
3月前
|
前端开发 JavaScript 开发者
2025 最新 100 道 CSS 面试题及答案解析续篇
本文整理了100道CSS面试题及其答案,涵盖CSS基础与进阶知识。内容包括CSS引入方式、盒模型、选择器优先级等核心知识点,并通过按钮、卡片、导航栏等组件封装实例,讲解单一职责原则、样式隔离、响应式设计等最佳实践。适合前端开发者巩固基础、备战面试或提升组件化开发能力。资源地址:[点击下载](https://pan.quark.cn/s/50438c9ee7c0)。
96 5
2025 最新 100 道 CSS 面试题及答案解析续篇
|
3月前
|
缓存 NoSQL Java
Java Redis 面试题集锦 常见高频面试题目及解析
本文总结了Redis在Java中的核心面试题,包括数据类型操作、单线程高性能原理、键过期策略及分布式锁实现等关键内容。通过Jedis代码示例展示了String、List等数据类型的操作方法,讲解了惰性删除和定期删除相结合的过期策略,并提供了Spring Boot配置Redis过期时间的方案。文章还探讨了缓存穿透、雪崩等问题解决方案,以及基于Redis的分布式锁实现,帮助开发者全面掌握Redis在Java应用中的实践要点。
177 6
|
3月前
|
NoSQL Java 微服务
2025 年最新 Java 面试从基础到微服务实战指南全解析
《Java面试实战指南:高并发与微服务架构解析》 本文针对Java开发者提供2025版面试技术要点,涵盖高并发电商系统设计、微服务架构实现及性能优化方案。核心内容包括:1)基于Spring Cloud和云原生技术的系统架构设计;2)JWT认证、Seata分布式事务等核心模块代码实现;3)数据库查询优化与高并发处理方案,响应时间从500ms优化至80ms;4)微服务调用可靠性保障方案。文章通过实战案例展现Java最新技术栈(Java 17/Spring Boot 3.2)的应用.
204 9
|
3月前
|
设计模式 安全 Java
Java 基础知识面试题全解析之技术方案与应用实例详解
本内容结合Java 8+新特性与实际场景,涵盖函数式编程、Stream API、模块化、并发工具等技术。通过Lambda表达式、Stream集合操作、Optional空值处理、CompletableFuture异步编程等完整示例代码,助你掌握现代Java应用开发。附面试题解析与技术方案,提升实战能力。代码示例涵盖计算器、员工信息统计、用户查询、模块化系统设计等,助你轻松应对技术挑战。
95 9
|
3月前
|
缓存 Java 索引
2025 年 Java 面试必备最常见 200 + 面试题及答案解析
这是一份针对Java面试的综合技术方案与应用实例文档,涵盖Java基础(JDK/JRE、字符串、IO流)、容器(ArrayList/LinkedList、HashMap)、多线程(线程创建、同步、线程池)、数据库(MySQL索引、Redis缓存穿透)及Spring框架(IOC容器、热部署)等核心模块。通过详细解析常见面试题,帮助读者深入理解并掌握Java核心技术,为应对面试提供全面指导。此外,还涉及反射、设计模式、JVM调优等进阶内容,助力开发者全面提升技能。代码示例可从提供的链接下载。
777 6
|
3月前
|
算法 安全 Java
2025 校招必看:Java 开发面试核心知识点深度解析及最新笔面试题汇总
本文针对2025校招Java开发面试,系统梳理了Java基础、集合框架、多线程并发、JVM等核心知识点,并附带最新笔面试题。内容涵盖封装、继承、多态、异常处理、集合类使用、线程同步机制、JVM内存模型及垃圾回收算法等。同时深入探讨Spring、数据库(MySQL索引优化、Redis持久化)、分布式系统(CAP理论、分布式事务)等相关知识。通过理论结合实例解析,帮助考生全面掌握面试要点,提升实战能力,为成功拿下Offer奠定坚实基础。
367 3
|
3月前
|
存储 缓存 安全
Java 集合容器常见面试题及详细解析
本文全面解析Java集合框架,涵盖基础概念、常见接口与类的特点及区别、底层数据结构、线程安全等内容。通过实例讲解List(如ArrayList、LinkedList)、Set(如HashSet、TreeSet)、Map(如HashMap、TreeMap)等核心组件,帮助读者深入理解集合容器的使用场景与性能优化。适合准备面试或提升开发技能的开发者阅读。
61 0
|
3月前
|
存储 缓存 安全
Java 集合篇面试题全面总结及答案解析
本文总结了Java集合框架的核心概念、常见集合类的特性与应用场景,以及开发中可能遇到的问题与解决方案。内容涵盖集合框架的基础接口(如Collection、Set、List、Map)、泛型的优点、线程安全集合类(如ConcurrentHashMap、CopyOnWriteArrayList)、常见集合类的区别(如ArrayList与LinkedList、HashMap与HashTable)等。此外,还详细介绍了如何实现LRU缓存、FIFO队列、优先级队列及栈等数据结构,并提供了相关代码示例。通过本文,读者可以全面掌握Java集合相关的面试知识点及其实际应用技巧。
127 1

热门文章

最新文章