Linux 面试常见(55题)

Linux 面试常见(55题)TOC 删除线格式 一 文件管理 目录操作 创建目录 mkdir mkdir 命令可以创建一个新的目录 例如 在当前目录下创建一个名为 test 的目录 mkdir test 2 删除目录 rmdir rmdir 命令可以删除一个空目录 例如 要删除名为 test 的空目录

大家好,我是讯享网,很高兴认识大家。

@TOC删除线格式
一、文件管理
目录操作

  1. 创建目录:mkdir

mkdir命令可以创建一个新的目录。例如,在当前目录下创建一个名为“test”的目录:

rmdir命令可以删除一个空目录。例如,要删除名为“test”的空目录,

使用ls命令可以列出目录中的所有文件和子目录

使用cd命令可以更改当前工作目录。例如,要进入名为“test”的目录

使用cp -r命令可以复制一个目录及其所有子目录和文件。例如,要将名为“test”的目录复制到名为“backup”的目录中

使用mv命令可以移动或重命名一个目录。例如,要将名为“test”的目录移动到名为“backup”的目录中,可以在终端中输入以下命令:mv test backup。如果你想要重命名目录,可以将目录的新名称作为第二个参数传递给mv命令。

  1. 查找目录:使用find命令可以在文件系统中查找目录。例如,要查找名为“test”的目录,可以在终端中输入以下命令:find / -type d -name test。这将从根目录开始搜索名为“test”的目录。

ls
该命令单独使用时,只会简单地列出当前目录下的文件和文件夹名称,不会显示文件或文件夹的详细信息。
ls -l
将显示文件和文件夹的权限、所有者、大小、创建日期等详细信息
cd:切换当前工作目录。

示例:cd ~/Documents

解释:在这个例子中,~ 表示当前用户的 home 目录,即主文件夹。这个命令会将工作目录切换到当前用户的 Documents 文件夹。

pwd:显示当前所在路径。

示例:pwd

解释:该命令会在屏幕上显示当前所在路径的绝对路径。

mkdir:创建新目录。

示例:mkdir ~/Documents/NewFolder

解释:在这个例子中,该命令会在当前用户的 Documents 文件夹中创建一个名为 “NewFolder” 的新文件夹。

rmdir:删除空目录。

示例:rmdir ~/Documents/NewFolder

解释:该命令会删除当前用户的 Documents 文件夹中名为 “NewFolder” 的文件夹,但前提是该文件夹是空的。对于非空文件夹,请使用 rm -r 命令。

touch:创建新的空文件。

示例:touch ~/Documents/NewFile.txt

解释:该命令会在当前用户的 Documents 文件夹中创建一个名为 “NewFile.txt” 的新文件。

cp:复制文件或目录。

示例:cp ~/Documents/OldFile.txt ~/Documents/NewFile.txt

解释:该命令会将当前用户的 Documents 文件夹中名为 “OldFile.txt” 的文件复制到名为 “NewFile.txt” 的新文件。

mv:移动文件或目录。

示例:mv ~/Documents/OldFile.txt ~/Desktop/

解释:该命令会将名为 “OldFile.txt” 的文件从当前用户的 Documents 文件夹中移动到桌面。

rm:删除文件或目录。

示例:rm ~/Documents/OldFile.txt

解释:该命令会从当前用户的 Documents 文件夹中删除名为 “OldFile.txt” 的文件。对于文件夹,请使用 rm -r 命令。

cat:查看文件内容。

示例:cat ~/Documents/OldFile.txt

解释:该命令会打印出当前用户 Documents 文件夹中名为 “OldFile.txt” 的文件中的全部内容。

more/less:分页查看文件内容。

示例:more ~/Documents/OldFile.txt

解释:该命令可以分页查看文件内容,用户可以通过按下空格键来逐页查看文件内容。类似的命令还有 less ,用法相同。

echo:输出文本。

示例:echo “Hello World!”

解释:该命令会将一段文本打印到屏幕上,输出为 Hello World!。

chmod:修改文件或目录的权限。

示例:chmod u+x ~/Documents/OldFile.txt

解释:该命令会将当前用户对于名为 “OldFile.txt” 的文件的执行权限设置为允许,其他用户的执行权限不变。这里,“u” 表示 “user” 即当前用户,“+x” 表示增加执行权限。

chown:修改文件或目录的所有者。

示例:chown user:group ~/Documents/OldFile.txt

解释:该命令会将名为 “OldFile.txt” 的文件的所有者和所在用户组分别设置为指定的用户和用户组。

ps:显示当前进程信息。

示例:ps aux

解释:该命令会列出系统上所有正在运行的进程的详细信息。

RedHat中,从root用户切到userl用户,一般用什么命令
su - userl
su表示切换用户(superuser),-表示切换至指定用户的环境变量,保持与目标用户相同的环境配置。userl是需要切换到的普通用户的用户名。

如何快速切换到用户John的主目录下
使用cd John命令快速切换到用户John的主目录下。其中,表示当前用户(即使用该命令的用户)的主目录,John则是需要进入到其主目录下的用户名。

所有者权限为“读、写、执行”,对应的数字为7(二进制为111)。

同组用户权限为“读、执行”,对应的数字为5(二进制为101)。

其他用户权限为“读、执行”,对应的数字为5(二进制为101)。

因此,755表示该文件所有者具有读、写、执行的权限,同组用户和其他用户则只具有读、执行的权限。

在Linux系统图形界面中,可以通过“系统监控”等工具来查看CPU信息。

查看占用CPU使用率最高的进程
top -o %CPU
“-o"参数表示按照指定字段进行排序,”%CPU"则表示按照CPU使用率进行排序。如果想按照其他字段(如内存使用率)进行排序,只需要将"%CPU"替换为对应的字段即可

例如,如果要查看当前目录下的文件 “example.log” 的末尾50行,可以执行以下命令:

使用 less 命令的格式为:

如果要一次显示一页内容,可以直接输入 less 命令并在旁边加上文件名,例如:

使用ifconfig命令:该命令可以显示网络接口的配置信息,包括IP地址。在终端中输入ifconfig命令并回车,即可查看系统中所有网络接口的IP地址。

hostname -I
查看文件
在Linux中查看文件可以使用多个命令和工具,以下是其中常见的几种方法:

使用cat命令:该命令可以显示文件内容。在终端中输入cat [文件名]命令并回车,即可将文件内容输出到终端。

使用head和tail命令:这两个命令分别用于查看文件开头和结尾的几行内容。在终端中输入head -n [行数] [文件名]或者tail -n [行数] [文件名]命令并回车,即可查看文件的前n行或者末尾的n行内容。

head -n 10 file.txt
tail -n 10 file.txt
动态查看日志文件
在Linux中,可以使用tail命令来实时查看日志文件的更新情况。下面是具体的命令格式及参数解释:

例如,要查看/var/log/syslog日志文件的最新更新记录,可以使用以下命令:

tail:可以实时查看正在更新的日志文件,常用于监控系统运行时产生的日志信息;

cat:可以显示整个日志文件的内容,适合查看较小的日志文件;

less:按页查看日志文件的内容,同时还支持在文件中进行搜索和跳转操作。

在查看日志时,主要需要关注以下内容:

错误信息和异常事件:这些信息可以帮助我们快速发现系统中存在的问题,从而及时处理。

系统的运行状态:包括系统启动和关闭时间、CPU、内存和网络等资源的使用情况等,可以帮助我们了解系统的性能状况,及时优化系统配置。

应用程序的日志信息:记录应用程序的运行过程,包括访问日志、调试日志、业务异常等,可以帮助我们诊断应用程序的问题,提高应用程序的稳定性和可靠性。

命令格式为:

-h:以人类可读的方式显示磁盘空间;

-T:显示文件系统类型;

-x:排除指定的文件系统类型。

例如,要查看当前系统的所有文件系统的磁盘空间使用情况,可以执行以下命令:

使用 netstat 命令的格式为:

例如,要查看系统中是否有进程监听 80 端口,可以使用以下命令:

使用 lsof 命令查看某个端口是否被占用,命令格式如下:

使用 ps 命令的格式为:

例如,要查看进程名为 “nginx” 的进程的进程号,可以使用以下命令:

如果知道要查找的进程的名称或者关键字,还可以直接使用 pgrep 命令来查找该进程的进程号,其命令格式为:

要在 Linux 中过滤文件内容中包含 “ERROR” 的行,可以使用以下命令:

如果想要忽略大小写,可以添加 -i 参数,例如:

ps -A
如何查询出tomcat的进程并杀掉这个进程
使用ps命令查询Tomcat进程的进程号(PID)和其他信息。可以使用以下命令:

找到要结束的Tomcat进程的PID。

使用kill命令关闭进程。可以使用以下命令:

等待一段时间后,再次运行ps命令以确保Tomcat进程已经成功地结束。

使用该命令可能会导致某些进程数据损坏或者资源泄漏等问题,因此建议在必要时才使用kill -9命令,同时进行必要的备份和数据保护工作。

需要注意的是,如果正常的方式不能结束进程,才使用kill -9命令来强制停止。如果目标进程没有响应,或者无法通过其他方式终止进程时,才考虑使用该命令。

如何在文件中查找显示所有以“”打头的行
可以在Linux系统中使用grep命令来搜索文件中的所有以“
”打头的行,具体命令如下:

执行该命令后,系统会在指定文件中查找所有以“*”打头的行,并将这些行输出到终端。如果想要将搜索结果保存到文件中,可以将命令改为:

grep “^*” filename > result.txt
把一个文件夹打包压缩成.tar.gz的命令,以及解压拆包.tar.gz的命令
将一个文件夹打包成.tar.gz的命令如下所示:


讯享网

解压缩一个.tar.gz压缩包的命令如下:

该命令会在当前目录下解压出文件夹以及文件夹中的内容。如果你希望将文件解压到指定的目录下,可以在命令最后加上目标路径。

在Linux系统上,可以通过以下命令安装OpenSSH:

sudo apt-getupdate
sudo apt-get install openssh-server
在Windows系统上,需要在官网下载并安装OpenSSH。

运行上述命令后,输出的结果为:

root
daemon
bin
sys
sync
在Linux中grep和find的区别?
grep:用于在文件中查找指定的字符串,并输出包含该字符串的行。语法如下:

find:用于在指定目录下查找符合条件的文件或目录,并执行指定的操作。语法如下:

可以看到,grep 和 find 的主要区别在于它们的作用对象不同。grep 作用于文件内容,用于在文件中查找指定的字符串;而 find 作用于文件系统,用于查找符合条件的文件或目录。

filename 是需要搜索的文件名。

在多个文件中查找字符串

递归地查找目录中的文件

查找字符串时忽略大小写:

显示匹配行的行号:

显示不匹配的行:

统计匹配行数:

匹配整个单词:

使用 mkdir -p 命令

使用逐级创建目录的方式

删除多级目录的 Linux 命令也有两种方式:

使用 rm -r 命令

使用 rmdir 命令

具体操作如下:

要了解当前目录的空间占用情况,可以在终端中输入以下命令:

执行上述命令后,终端会显示当前目录的总空间大小,单位为 KB、MB 或 GB 等。例如:

要更改文件的权限设置,可以在终端中输入以下命令:

使用数字表示权限时,mode 参数由三位数字组成,每一位都可以取 0-7 的值,分别表示用户、用户组和其他用户的权限。其中,0 表示无权限,1 表示执行权限,2 表示写权限,3 表示写和执行权限,4 表示读权限,5 表示读和执行权限,6 表示读和写权限,7 表示读、写和执行权限。例如,chmod 755 file.txt 表示将文件 file.txt 的权限设置为 -rwxr-xr-x,即用户具有读、写和执行权限,用户组和其他用户具有读和执行权限。

使用符号表示权限时,mode 参数由多个符号组成,包括:

u:表示用户的权限。

g:表示用户组的权限。

o:表示其他用户的权限。

a:表示所有用户的权限。

+:表示增加权限。

-:表示取消权限。

=:表示设置权限。

例如,chmod u+w file.txt 表示将文件 file.txt 的用户权限中增加写权限。

需要注意的是,更改文件或目录的权限时需要具有足够的权限,否则会提示 Permission denied 错误。

使用 at 命令创建一个新的任务,语法如下:

at

在任务提示符 at> 下输入要执行的命令或脚本。任务提示符后添加的所有内容都将在指定时间运行。例如,要在明天早上 8 点运行 /path/to/my/script.sh 脚本文件,可以输入以下命令:

at8am tomorrow
at> /path/to/my/script.sh
at>
第一行命令将会话交给 at,并设置任务在明天早上 8 点运行;第二行命令输入要运行的脚本内容;最后一行 表示结束输入。

使用 atq 命令列出当前所有的待执行的任务,确认任务已经成功添加。

关闭终端并等待指定时间到达,任务将被自动执行。

需要注意的是,at 命令的可用性取决于系统上是否已安装并启用 atd 服务。如果系统没有安装该服务,则需要先安装并启动该服务,例如在 Ubuntu 中可以使用以下命令:

sudo apt-get install at
sudo systemctl start atd
在bash中,export命令的作用是什么
在bash shell中,export命令的作用是设置或显示环境变量。在shell中执行程序时,shell会提供一组环境变量,export命令可以新增、修改或删除环境变量,供后续执行的程序使用。

0 表示分钟,表示每小时的第0分钟执行任务;

13,20 表示小时,表示每天的下午1点和晚上8点执行任务;

  • 表示日期,表示任意日期;
  • 表示月份,表示任意月份;

1-5 表示星期几,表示周一至周五执行任务。

-f:强制卸载,即使文件系统处于忙碌状态也会被卸载;

-l:延迟卸载,等到文件系统不再使用时再卸载。

要卸载一个已装载的文件系统,可以按照以下步骤进行操作:

确定要卸载的文件系统路径,例如 /mnt/mydata;

在终端中输入命令 umount /mnt/mydata,把 /mnt/mydata 文件系统卸载掉。

这个命令可以在系统启动时自动执行,也可以在修改 /etc/fstab 文件后手动执行,以使新的文件系统条目生效。

ps:如果当前目录下已存在同名的目标文件 f2.txt,会提示是否覆盖该文件。如果要强制覆盖,可以加上 -f 选项,即 cp -f f1.txt f2.txt。

例如,在Shell脚本中可以使用行续行来将一条长命令分成多行书写,提高代码的可读性。示例如下:

echo"这是一条比较长的命令,需要分成
多行才能完整显示在终端中。"
在这个例子中,我们使用反斜杠符号来将一条长字符串拆成两行,但是这两行字符串实际上是一条完整的命令,会在执行时被当成单独一行来处理。

/etc/profile 文件:是系统全局的shell配置文件,它会在用户登录时被读取,并设置环境变量、执行系统级别的脚本等。如果要为所有用户设置环境变量,可以将相应的语句添加到 /etc/profile 文件中。

/etc/environment 文件:是系统全局的环境变量配置文件,它包含了系统范围内的所有环境变量设置,这些设置会在系统启动时被读取,并且在所有进程中都生效。如果要为所有用户设置全局的环境变量,可以将变量名和值添加到 /etc/environment 文件中。

以 #!/bin/bash 开头的脚本文件会使用 Bash 解释器来执行,而以 #!/usr/bin/env bash 开头的脚本文件则会在系统的 $PATH 中查找名为 bash 的程序,并使用它来执行脚本文件。

具体操作步骤如下:

进入 vi 编辑器界面。

按下 Esc 键,确保进入了命令模式。

输入 :q! 命令,包括冒号 : 和感叹号 !。

按下回车键,便可退出 vi 编辑器,并放弃之前的修改。

需要注意的是,这个命令不能恢复之前的修改内容,而且一旦执行之后就无法撤销,所以在使用前请确认是否需要保存修改。

检测网络连接的具体命令格式为:

Apache HTTP 服务器本质上是一个多进程服务器,主进程会接收来自客户端的连接请求,并创建子进程来处理这些请求。在默认情况下,新创建的子进程会继承主进程的有效用户 ID 和组 ID,并使用这些 ID 来运行程序。因此,如果主进程以特权用户(如 root 用户)的身份运行,那么所有的子进程也将拥有相同的权限,并且可能存在安全风险。

为了避免这种安全风险,通常可以通过修改 Apache 配置文件中的 User 和 Group 指令来指定运行服务器进程的用户和组,从而降低服务器进程所占用权限的级别。例如,将这些指令设置为非特权用户(如 httpd 用户)可以增强服务器的安全性。

例如,在 Linux 下,可以使用以下命令将文件打包:

install:
mkdir -p /usr/local/my_project
tar -xzvf my_project.tar.gz -C /usr/local/my_project
执行 make install 命令即可将已编译过的代码安装到 /usr/local/my_project 目录下。

TCP/IP中,哪个协议是用来进行IP自动分配的?
在 TCP/IP 协议族中,DHCP(Dynamic Host Configuration Protocol)协议是用来进行 IP 自动分配的。DHCP 是一种面向无连接的协议,支持将 IP 地址、子网掩码、网关、DNS 服务器等网络配置信息自动分配给客户端设备。当一个新设备加入网络时,它可以向 DHCP 服务器发起请求,自动获取可用的 IP 地址和其他网络配置信息。使用 DHCP 可以简化网络管理,提高网络的稳定性和可扩展性。
————————————————
版权声明:本文为CSDN博主「清微清微」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_/article/details/

欢迎使用Markdown编辑器

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

新的改变

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

  1. 全新的界面设计 ,将会带来全新的写作体验;
  2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
  3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
  4. 全新的 KaTeX数学公式 语法;
  5. 增加了支持甘特图的mermaid语法1 功能;
  6. 增加了 多屏幕编辑 Markdown文章功能;
  7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
  8. 增加了 检查列表 功能。

功能快捷键

撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G

合理的创建标题,有助于目录的生成

直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

如何改变文本的样式

强调文本 强调文本

加粗文本 加粗文本

标记文本

删除文本

引用文本

H2O is是液体。

210 运算结果是 1024.

插入链接与图片

链接: link.

图片: Alt

带尺寸的图片: Alt

居中的图片: Alt

居中并且带尺寸的图片: Alt

当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

如何插入一段漂亮的代码片

去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

// An highlighted block var foo = 'bar'; 

讯享网

生成一个适合你的列表

  • 项目
    • 项目
      • 项目
  1. 项目1
  2. 项目2
  3. 项目3
  • 计划任务
  • 完成任务

创建一个表格

一个简单的表格是这么创建的:

项目 Value
电脑 $1600
手机 $12
导管 $1

设定内容居中、居左、居右

使用:---------:居中
使用:----------居左
使用----------:居右

第一列 第二列 第三列
第一列文本居中 第二列文本居右 第三列文本居左

SmartyPants

SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

TYPE ASCII HTML
Single backticks 'Isn't this fun?' ‘Isn’t this fun?’
Quotes "Isn't this fun?" “Isn’t this fun?”
Dashes -- is en-dash, --- is em-dash – is en-dash, — is em-dash

创建一个自定义列表

Markdown
Text-to- HTML conversion tool
Authors
John
Luke

如何创建一个注脚

一个具有注脚的文本。2

注释也是必不可少的

Markdown将文本转换为 HTML。

KaTeX数学公式

您可以使用渲染LaTeX数学表达式 KaTeX:

Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n1)!nN 是通过欧拉积分

Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t   . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=0tz1etdt.

你可以找到更多关于的信息 LaTeX 数学表达式here.

新的甘特图功能,丰富你的文章

2014-01-07 2014-01-09 2014-01-11 2014-01-13 2014-01-15 2014-01-17 2014-01-19 2014-01-21 已完成 进行中 计划一 计划二 现有任务 Adding GANTT diagram functionality to mermaid
小讯
上一篇 2025-02-11 11:32
下一篇 2025-04-05 12:53

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/27669.html