帮助指令 man ,help及文档常用管理指令

简介: 这篇文章介绍了Linux系统中常用的帮助指令`man`和`help`,以及文件目录操作、文本处理、命令历史查看等基础管理指令的使用方法。

帮助指令 man,help

1. man

当我们想要了解某个命令如何使用,及选项的含义是什么以及配置文件的帮助信息时,可以使用 man [命令或配置文件],这样便可以获得到帮助提示信息了。

语法格式:man [命令或者配置文件]

比如,常用的ls命令,我们想要查看其选项参数有哪些,可以使用man ls来查看帮助信息。

在这里插入图片描述

在这里插入图片描述

通过键盘上的上下键来进行帮助信息滚动,然后使用q来进行退出

2. help

help 指令,用于获得shell内置命令的帮助信息。

语法格式:help 命令

Shell 内置命令,就是由 Bash 自身提供的命令,而不是文件系统中的某个可执行文件,比如我们常常使用的切换目录 cd命令(tip:可以通过type 命令来确定一个命令是否为Shell内置命令)。

   type cd # 查看命令是否为Shell内建命令
   help cd # 查看cd命令的帮助信息

在这里插入图片描述

文件目录类常用指令

1. pwd 指令

pwd指令,用于显示当前工作目录的绝对路径。

语法格式:pwd

比如,我们切换到home目录下,然后查看当前目录的绝对路径

cd /home # 切换目录到home目录下
ls # 查看信息
pwd #查看当前工作目录的绝对路径

在这里插入图片描述

2. ls 指令

ls指令,用于查看当前工作目录下的文件和目录名信息。

语法格式:ls [选项] [目录名或者文件名]

常用选项:

  1. -a : 显示当前目录的所有文件和目录,包括隐藏的目录和文件。
  2. -l : 以列表的方式显示信息。
cd /home #切换工作目录
ls # 查看当前目录下的子文件和目录信息
ls -a  # 查看所有当前目录下的子文件和目录信息
ls -l  # 以列表的方式显示信息

在这里插入图片描述

3. cd 指令

cd 指令,就是切换工作目录和路径的指令,它可以是绝对路径和相对路径名的切换。

语法格式:cd [参数]

选项参数列表及用法说明:

在这里插入图片描述

  1. cd ~ : 回到自己的家目录
  2. cd : : 回到自己的家目录
  3. cd.. : 回到当前目录的上一级目录

3.1 家目录和根目录的区别

~ 代表是home目录,也就是家目录, / 代表的是根目录 。用户登录后在 家目录 ,可使用pwd命令查看,普通用户为 /home/用户名,root用户为/root 。根目录是在最顶端的目录。

比如,我们切换到某一普通用户的目录下,然后使用cd ~即回到家目录,看最终的目录是否回到了home目录。

cd /home # 切换到home目录
ls
cd cat/ # 切换到cat 目录
pwd # 查看当前目录的绝对路径
cd ~ # 切换工作目录到家目录
pwd # 查看当前目录的绝对路径

在这里插入图片描述

测试cd ..返回上级目录

cd /home/cat # 切换到home下的cat目录
pwd
cd .. # 返回到上级目录
pwd
cd .. # 返回到上级目录
pwd 
cd .. # 根目录为顶级目录,无法再返回上级目录

在这里插入图片描述

4. mkdir 和 rmidr 以及 touch 指令

4.1 mkdir 创建目录

mkdir指令用于创建目录。

语法格式:mkdir [选项] 要创建的目录名

常用选项 -p ,创建多级目录。

例如:在home目录下创建一个目录test1为单级目录,然后再创建一个car目录,里面包括一个parts子目录。

cd /home
ls
mkdir test1 # 创建test1单级目录
ls 
mkdir -p car/parts # 创建一个多级目录
ls
cd car/ # 进入到car目录中查看子目录parts是否创建成功
ls

在这里插入图片描述

4.2 rmdir 删除空目录

rmdir指令的作用为删除空目录。

语法格式:rmdir [选项] 要删除的空目录

rmdir 删除的是空目录,如果目录下存在内容时无法删除,删除非空目录时,使用rm -rf 要删除的目录名来进行删除。

例子:删除刚刚创建的test1目录,以及car目录(包含一个子目录parts)中所有的内容

cd /home # 切换到home目录下
rmdir test1 # 删除test1目录
ls
rm -rf car # 删除car目录下的所有内容(rmdir只能删除空目录,所以rmdir不适用,使用rm 指令)
ls

在这里插入图片描述

4.3 touch 创建空文件

touch 指令用于创建空文件。

语法格式:touch 文件名称

在根目录下创建一个a.txt的文件

cd ~ # 切换到根目录下
ls
touch a.txt # 创建a.txt的空文件
ls

在这里插入图片描述

5. cp 和 rm 指令

5.1 cp 指令

cp 指令拷贝文件到指定目录。

语法格式:cp [选项] source dest,(source即为源文件名,dest为目的文件名)。

常用选项:-r ,递归复制整个文件夹。

注意,使用递归复制某个文件夹时,如果在复制的过程中,出现重名的文件,想跳过重名文件不覆盖,且不进行信息提示的话,使用\cp -r XXXX

在home目录下创建一个car目录,然后在car目录里面新建一个test.txt文件和一个test目录,同时在home目录下面新建一个demo目录,最后将car目录及其中中的内容拷贝到demo目录中。

cd /home
ls
mkdir car #新建car目录
ls
cd car/ 切换到car目录中
mkdir test # 新建test子目录
touch test.txt # 新建test.txt文件
ls
cd /home 
mkdir demo #新建demo目录
cp -r car demo #将car中的所有内容拷贝到demo目录中去(选项参数-r,递归拷贝)
cd demo/ #切换到demo目录中进行查看
ls
cd car/
ls

在这里插入图片描述

5.2 rm 指令

rm 指令移除文件或者移除目录。

语法格式:rm [选项] 要删除的文件或者目录名

常用选项:

  1. -r : 递归删除整个文件夹
  2. -f : 强制删除不提示

例子:将刚刚创建的demo目录删除,包括其中的内容,以及car目录也进行删除。

cd /home
ls 
rm -rf demo
rm -rf car
ls

在这里插入图片描述

6. mv 指令

mv 指令移动文件与目录或者重命名

语法格式:

mv oldNameFile newNameFile # 重命名
mv /temp/movedfile /targetFolder #移动文件

将根目录下的a.txt文件重命名为b.txt,然后将b.txt移动到文档目录下

cd ~ #切换到根目录下
ls #查看当前目录的内容
mv a.txt b.txt #将a.txt文件重命名为b.txt
ls
mv b.txt /root/文档 #将b.txt文件移动到root下面的文档目录中去
ls
cd /root/文档
ls

在这里插入图片描述

7. cat 指令

cat 查看文件内容

语法格式:cat [选项] 要查看的文件

常用选项:-n ,显示行号

参数说明:

  • -n 或 --number:由 1 开始对所有输出的行数编号。
  • -b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
  • -s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
  • -v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
  • -E 或 --show-ends : 在每行结束处显示 $。
  • -T 或 --show-tabs: 将 TAB 字符显示为 ^I。
  • -A, --show-all:等价于 -vET。
  • **-e:**等价于"-vE"选项;
  • **-t:**等价于"-vT"选项;

cat 只能浏览文件,而不能修改文件,为了浏览方便一般结合 |more指令。

cat -n /etc/profile |more

比如,查看Hello.java,并且查看时想看到它的编号

cat -n Hello.java

在这里插入图片描述

8. more 和 less 指令

8.1 more指令

more指令时一个基于vi编辑器的文本过滤器,它以全屏的方式按页显示文本文件的内容。more指令中内置了若干快捷键。

more与cat类似,但是more指令是以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,按 h 。

语法格式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]

参数

  • -num 一次显示的行数
  • -d 提示使用者,在画面下方显示 [Press space to continue, ‘q’ to quit.] ,如果使用者按错键,则会显示 [Press ‘h’ for instructions.] 而不是 ‘哔’ 声
  • -l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
  • -f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)
  • -p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
  • -c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
  • -s 当遇到有连续两行以上的空白行,就代换为一行的空白行
  • -u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
  • +/pattern 在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示
  • +num 从第 num 行开始显示
  • fileNames 欲显示内容的文档,可为复数个数

常用操作命令:

  • Enter 向下n行,需要定义。默认为1行
  • Ctrl+F 向下滚动一屏
  • 空格键 向下滚动一屏
  • Ctrl+B 返回上一屏
  • \= 输出当前行的行号
  • :f 输出文件名和当前行的行号
  • V 调用vi编辑器
  • !命令 调用Shell,并执行命令
  • q 退出more

8.2 less 指令

less是用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持显示各种终端。less指令在显示原始文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于大型文件具有较高的效率。

less 与 more 类似,less 可以随意浏览文件,支持翻页和搜索,支持向上翻页和向下翻页。

语法格式:less [选项参数] 文件

参数说明

  • -b <缓冲区大小> 设置缓冲区的大小
  • -e 当文件显示结束后,自动离开
  • -f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
  • -g 只标志最后搜索的关键词
  • -i 忽略搜索时的大小写
  • -m 显示类似more命令的百分比
  • -N 显示每行的行号
  • -o <文件名> 将less 输出的内容在指定文件中保存起来
  • -Q 不使用警告音
  • -s 显示连续空行为一行
  • -S 行过长时间将超出部分舍弃
  • -x <数字> 将"tab"键显示为规定的数字空格
  • /字符串:向下搜索"字符串"的功能
  • ?字符串:向上搜索"字符串"的功能
  • n:重复前一个搜索(与 / 或 ? 有关)
  • N:反向重复前一个搜索(与 / 或 ? 有关)
  • b 向上翻一页
  • d 向后翻半页
  • h 显示帮助界面
  • Q 退出less 命令
  • u 向前滚动半页
  • y 向前滚动一行
  • 空格键 滚动一页
  • 回车键 滚动一行
  • [pagedown]: 向下翻动一页
  • [pageup]: 向上翻动一页

9. echo 指令

echo指令,输出内容到控制台。

语法格式:echo [选项] 输出内容

比如输出"helloworld ",echo helloworld,选项参数可以通过man指令来进行查看。

echo的详细用发可以参考 Shell echo命令 | 菜鸟教程 (runoob.com)

10. head 和 tail 指令

head指令用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。

语法格式:

head 文件 # 查看文件前10行内容
head -n X 文件 # 查看文件前X行内容,x可以是任意行数

tail 用于输出文件中尾部的内容,默认情况下,tail指令显示文件的末尾10行内容。(与head指令恰好相反)

tail 文件 # 查看文件末尾10行内容
tail -n X 文件 # 查看文件末尾X行内容,x可以是任意行数
tail -f 文件 # 追踪文档更新

例子:查看/etc/profile的前5行和末尾5行的内容信息

head -n 5 /etc/profile
tail -n 5 /etc/profile

在这里插入图片描述

11. > 输出重定向 和 >> 追加指令

语法格式:

  1. ls -l>文件,将列表的内容写入到文件中(覆盖写模式)。
  2. ls -al>>文件,将列表的内容追加到文件中(末尾追加模式)。
  3. cat 文件1>文件2,将文件1的内容覆盖到文件2中去。
  4. echo "内容">>文件,将“内容”追加到文件末尾中去。

例如:在home目录下创建一个demo目录,然后里面分别创建a.txt文件(空文件)和b.txt文件(有一段字符‘test01’),然后分别进行上面语法格式的练习。

cd /home
mkdir demo
cd demo/
touch a.txt # 创建一个空的文件a.txt
vim b.txt   # 使用vim编辑器,创建b.txt并且编辑其中的文本内容
ls 
ls -l>a.txt # 将列表中的内容写入到文件a.txt中
vim a.txt   # 使用vim编辑器查看a.txt中的内容
ls -al>>a.txt # 将列表中的内容追加到a.txt中
vim a.txt
cat a.txt>b.txt # 将a.txt的内容覆盖到b.txt中
vim b.txt
echo helloworld >> b.txt #对b.txt文件末尾追加hellowold
vim b.txt

在这里插入图片描述

只要记住一个>是覆盖模式,两个>的话就是追加写模式即可。

12. ln 指令

ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。

硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。

不论是硬链接或软链接都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。

软连接也称为符号连接,类似于windows里的快捷方式,主要存放了链接其他文件的路径

软链接

  • 1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
  • 2.软链接可以 跨文件系统 ,硬链接不可以
  • 3.软链接可以对一个不存在的文件名进行链接
  • 4.软链接可以对目录进行链接

硬链接

  • 1.硬链接,以文件副本的形式存在。但不占用实际空间。
  • 2.不允许给目录创建硬链接
  • 3.硬链接只有在同一个文件系统中才能创建

语法格式:ln -s [原文件或目录][软链接名]

命令参数

  • 必要参数:

    • –backup[=CONTROL] 备份已存在的目标文件

    • -b 类似 –backup ,但不接受参数

    • -d 允许超级用户制作目录的硬链接

    • -f 强制执行

    • -i 交互模式,文件存在则提示用户是否覆盖

    • -n 把符号链接视为一般目录

    • -s 软链接(符号链接)

    • -v 显示详细的处理过程

  • 选择参数:

    • -S "-S<字尾备份字符串> "或 “–suffix=<字尾备份字符串>”

    • -V “-V<备份方式>“或”–version-control=<备份方式>”

    • –help 显示帮助信息

    • –version 显示版本信息

例子,为Hello.java 创建一个软连接demoLink,然后查看信息。

ln -s Hello.java demoLink #为Hello.java 创建一个软连接demoLink
ls
ll # ls -l 的缩写,就是按列表的形式查看当前目录的内容信息

在这里插入图片描述

12. history 指令

history指令,用于查看已经执行过的历史命令,也可以执行历史指令。

语法格式:

history # 显示所有的历史指令
history X # 显示最近使用过的X个指令
-a 写入命令记录
-c 清空命令记录
-d 删除指定序号的命令记录
-n 读取命令记录
-r 读取命令记录到缓冲区
-s 将指定的命令添加到缓冲区
-w 将缓冲区信息写入到历史文件

在这里插入图片描述

在这里插入图片描述


相关文章
|
10天前
|
弹性计算 人工智能 架构师
阿里云携手Altair共拓云上工业仿真新机遇
2024年9月12日,「2024 Altair 技术大会杭州站」成功召开,阿里云弹性计算产品运营与生态负责人何川,与Altair中国技术总监赵阳在会上联合发布了最新的“云上CAE一体机”。
阿里云携手Altair共拓云上工业仿真新机遇
|
6天前
|
机器学习/深度学习 算法 大数据
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析
2024“华为杯”数学建模竞赛,对ABCDEF每个题进行详细的分析,涵盖风电场功率优化、WLAN网络吞吐量、磁性元件损耗建模、地理环境问题、高速公路应急车道启用和X射线脉冲星建模等多领域问题,解析了问题类型、专业和技能的需要。
2506 14
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析
|
6天前
|
机器学习/深度学习 算法 数据可视化
【BetterBench博士】2024年中国研究生数学建模竞赛 C题:数据驱动下磁性元件的磁芯损耗建模 问题分析、数学模型、python 代码
2024年中国研究生数学建模竞赛C题聚焦磁性元件磁芯损耗建模。题目背景介绍了电能变换技术的发展与应用,强调磁性元件在功率变换器中的重要性。磁芯损耗受多种因素影响,现有模型难以精确预测。题目要求通过数据分析建立高精度磁芯损耗模型。具体任务包括励磁波形分类、修正斯坦麦茨方程、分析影响因素、构建预测模型及优化设计条件。涉及数据预处理、特征提取、机器学习及优化算法等技术。适合电气、材料、计算机等多个专业学生参与。
1519 14
【BetterBench博士】2024年中国研究生数学建模竞赛 C题:数据驱动下磁性元件的磁芯损耗建模 问题分析、数学模型、python 代码
|
8天前
|
编解码 JSON 自然语言处理
通义千问重磅开源Qwen2.5,性能超越Llama
击败Meta,阿里Qwen2.5再登全球开源大模型王座
531 13
|
1月前
|
运维 Cloud Native Devops
一线实战:运维人少,我们从 0 到 1 实践 DevOps 和云原生
上海经证科技有限公司为有效推进软件项目管理和开发工作,选择了阿里云云效作为 DevOps 解决方案。通过云效,实现了从 0 开始,到现在近百个微服务、数百条流水线与应用交付的全面覆盖,有效支撑了敏捷开发流程。
19282 30
|
1月前
|
人工智能 自然语言处理 搜索推荐
阿里云Elasticsearch AI搜索实践
本文介绍了阿里云 Elasticsearch 在AI 搜索方面的技术实践与探索。
18836 20
|
1月前
|
Rust Apache 对象存储
Apache Paimon V0.9最新进展
Apache Paimon V0.9 版本即将发布,此版本带来了多项新特性并解决了关键挑战。Paimon自2022年从Flink社区诞生以来迅速成长,已成为Apache顶级项目,并广泛应用于阿里集团内外的多家企业。
17524 13
Apache Paimon V0.9最新进展
|
8天前
|
人工智能 自动驾驶 机器人
吴泳铭:AI最大的想象力不在手机屏幕,而是改变物理世界
过去22个月,AI发展速度超过任何历史时期,但我们依然还处于AGI变革的早期。生成式AI最大的想象力,绝不是在手机屏幕上做一两个新的超级app,而是接管数字世界,改变物理世界。
458 48
吴泳铭:AI最大的想象力不在手机屏幕,而是改变物理世界
|
1天前
|
云安全 存储 运维
叮咚!您有一份六大必做安全操作清单,请查收
云安全态势管理(CSPM)开启免费试用
355 4
叮咚!您有一份六大必做安全操作清单,请查收
|
2天前
|
存储 关系型数据库 分布式数据库
GraphRAG:基于PolarDB+通义千问+LangChain的知识图谱+大模型最佳实践
本文介绍了如何使用PolarDB、通义千问和LangChain搭建GraphRAG系统,结合知识图谱和向量检索提升问答质量。通过实例展示了单独使用向量检索和图检索的局限性,并通过图+向量联合搜索增强了问答准确性。PolarDB支持AGE图引擎和pgvector插件,实现图数据和向量数据的统一存储与检索,提升了RAG系统的性能和效果。