“从零起步:实用Linux指令全面解析(一)”(下)

简介: “从零起步:实用Linux指令全面解析(一)”(下)

8. mv指令


mv命令是move的缩写,可以用来移动文件或者将文件重命名(move (rename) fifiles),是Linux系统下常用的命令,经常用来备份文件或者目录。


语法: mv [选项] 源文件或目录 目标文件或目录


功能:


1.视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。

2.识别到用户的意图为:当目录或文件不存在时,将mv指令视为重命名功能。在这种情况下,mv指令将把现有的文件或目录重命名为一个新的名称。

3.当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。

4.当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。


常用选项:


  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖


以下是mv指令使用案例:


1.


剪切文件或目录到新位置:


mv 源文件/目录 目标路径


例如,要将文件file1.txt剪切到目录/home/user/下,可以运行以下命令:


mv file1.txt /home/user/


如果目标路径中已经存在同名文件,该操作将替换目标文件。


2.


当目录或文件不存在时,将mv指令视为重命名功能


mv 原文件名/目录 新文件名/目录名


例如,要将文件file1.txt重命名为file2.txt,可以运行以下命令:


mv file1.txt file2.txt


如果要将目录mydir重命名为newdir,可以运行以下命令:


mv mydir newdir


如果新文件名或目录名已存在,它将替换现有文件或目录。


9. cat指令


语法:cat [选项][文件]


功能: 查看目标文件的内容


常用选项


  • -b 对非空输出行编号
  • -n 对输出的所有行编号
  • -s 不输出多行空行


cat使用案例


1.


查看文件内容:


cat 文件名


例如,要查看文件example.txt的内容,可以运行以下命令:


cat example.txt


cat指令会将文件的内容输出到终端上。


2.


合并文件内容:


cat 文件1 文件2 > 新文件


可以使用重定向符号 (>) 将多个文件的内容合并到一个新文件中。例如,要将文件file1.txt和file2.txt的内容合并到newfile.txt中,可以运行以下命令:


cat file1.txt file2.txt > newfile.txt


注意,如果目标文件newfile.txt已经存在,cat指令会覆盖它的内容。


3.


追加文件内容:


cat 文件1 >> 文件2


使用双可重定向符号 (>>) 可以将一个文件的内容追加到另一个文件的末尾。例如,要将file1.txt的内容追加到file2.txt的末尾,可以运行以下命令:


cat file1.txt >> file2.txt


file1.txt的内容会被追加到file2.txt的末尾。


4.


从标准输入创建文件:


cat > 文件名


使用 cat 命令结合重定向,可以从标准输入创建一个新文件,并将输入的内容写入该文件。执行以上命令后,输入你想要写入文件的内容,然后按下 Ctrl + D 结束输入。例如,创建一个名为 newfile.txt 的文件,可以运行以下命令:


cat > newfile.txt


然后输入你想要写入文件的内容,并按下 Ctrl + D 保存文件。


请注意,cat 指令还有其他可选参数和用法,你可以通过 man cat 命令来查看更多详细信息以及其它用法示例。


9.1 > && >>


> 是一个重定向操作符,在命令行中用于将命令的输出重定向到文件。


使用 > 操作符的基本语法如下:


command > file


其中,command 是要执行的命令,file 是要将输出重定向到的文件名。

示例:


echo "Hello, World!" > output.txt


这个例子中,echo "Hello, World!" 命令将字符串 “Hello, World!” 输出到标准输出,然后使用 > 操作符将输出重定向到名为 output.txt 的文件中。如果 output.txt 文件不存在,将创建该文件;如果文件已存在,将覆盖原有内容。


您还可以使用 >> 操作符将输出追加到文件的末尾,而不是覆盖文件的内容。示例:


echo "This is a new line." >> output.txt


这个示例中,echo "This is a new line." 命令将字符串 “This is a new line.” 输出到标准输出,然后使用 >> 操作符将输出追加到 output.txt 文件的末尾。


> 和 >> 操作符可用于将命令的输出重定向到任意文件,以便将输出保存到文件中,或作为其他命令的输入。


需要注意的是,使用 > 操作符时会覆盖文件的内容,慎重使用。如果要同时将输出重定向到文件并在屏幕上显示,请结合使用 tee 命令。


>> 命令是追加重定向


9.2 <


< 是一个输入重定向操作符,在命令行中用于将文件的内容作为输入重定向给命令。

使用 < 操作符的基本语法如下:


command < file


其中,command 是要执行的命令,file 是要将其内容作为输入的文件名。

示例:


cat < input.txt


这个例子中,cat 命令会从名为 input.txt 的文件中读取内容,

使用 < 操作符可以将文件的内容直接传递给命令,而无需手动键入内容或使用管道。

需要注意的是,< 操作符用于将文件内容输入到命令中,而不是将命令的输出重定向到文件。


10. man指令


Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是


man 语法: man [选项] 命令


  • k 根据关键字搜索联机帮助num 只在第num章节找
  • a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用

a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。

解释一下,面手册分为8章


1.是普通的命令

2.是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)

3.是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件

4.是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义

5.是给游戏留的,由各个游戏自己定义

6.是附件还有一些变量,比如向environ这种全局变量在这里就有说明

7.是系统管理用的命令,这些命令只能由root使用,如ifconfig


如不带编号默认从编号1开始查找


  • 下面是一些man指令的使用案例:


1.


查看命令的帮助文档:


man 命令


例如,要查看ls命令的帮助文档,可以运行以下命令:


man ls


man会显示ls命令的详细说明、选项、示例和相关信息。


2.


查看函数的帮助文档:


man 函数名


例如,要查看C语言的printf函数的帮助文档,可以运行以下命令:


man printf


man会显示printf函数的详细说明、语法、参数、返回值和示例。


11. stat指令


语法 : stat 目录或者文件


功能 :查看文件或者目录属性


常用选项


  • t :以简洁的方式显示输出,仅显示文件属性的数值部分,不包括标签或文字描述。
  • L :如果指向的是符号链接文件,则获取指向的文件的信息,而不是符号链接本身的信

息。

  • f:显示文件系统的信息而不是单个文件的信息。
  • r :以人类可读的格式显示文件大小。例如,使用以下选项将以K、M、G等单位而不是字

节显示文件大小:


stat指令的使用案例:


1.


显示单个文件的详细信息:


stat 文件名

例如,使用以下命令查看文件example.txt的详细信息:


stat example.txt


stat指令将显示文件的权限、所有者、大小、创建时间、修改时间等信息。


2.


显示多个文件的详细信息:


stat 文件1 文件2 ...


您可以一次输入多个文件名,以查看它们的详细信息。例如,要查看file1.txt和file2.txt的信息,可以运行以下命令:


stat file1.txt file2.txt


stat指令将依次显示每个文件的详细信息。


  • stat查看后的ACM是什么!?


在stat命令的输出中,ACM表示文件的访问、变更和修改时间。这些时间戳提供了关于文件的时间相关信息。


具体来说,ACM分别代表以下时间:


  • A:Access Time,文件的访问时间,指的是最后一次读取文件的时间。
  • C:Change Time,文件的变更时间,指的是最后一次更改文件属性(权限、所有者、链

接等)的时间。

  • M:Modification Time,文件的修改时间,指的是最后一次修改文件内容的时间。


这些时间戳是文件系统在处理文件时自动更新的,可以用来追踪文件的访问和修改历史。在使用stat命令时,你可以查看这些时间戳以了解文件的时间相关信息。


12. tree指令


tree是一个在Linux和Unix系统中用于以树状结构显示目录和文件的命令。它会递归地遍历指定的目录,并以层次结构的形式显示出来。


语法 :tree 目录或者文件

功能:层次结构的形式显示出来当前目录或文件内容


在大多数Linux发行版中,tree命令通常已经预安装。如果你的系统上尚未安装tree命令,你可以通过以下方法安装它:


  • CentOS系统:

在终端中运行以下命令以使用YUM包管理器安装tree: sudo yum install tree

sudo yum install tree


以下是一些tree指令的使用案例:


1.


显示当前目录的树状结构:


tree


该命令将显示当前目录下的所有子目录和文件,并以树状结构展示。


2.


显示指定目录的树状结构:


tree 目录路径


例如,要显示目录/home/user/Documents的树状结构,可以运行以下命令:


tree /home/user/Documents


tree指令将递归地显示该目录下的所有子目录和文件。

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
目录
相关文章
|
15天前
|
网络协议 Linux Docker
在Linux中,如何指定dns服务器,来解析某个域名?
在Linux中,如何指定dns服务器,来解析某个域名?
|
7天前
|
图形学 开发者 存储
超越基础教程:深度拆解Unity地形编辑器的每一个隐藏角落,让你的游戏世界既浩瀚无垠又细节满满——从新手到高手的全面技巧升级秘籍
【8月更文挑战第31天】Unity地形编辑器是游戏开发中的重要工具,可快速创建复杂多变的游戏环境。本文通过比较不同地形编辑技术,详细介绍如何利用其功能构建广阔且精细的游戏世界,并提供具体示例代码,展示从基础地形绘制到植被与纹理添加的全过程。通过学习这些技巧,开发者能显著提升游戏画面质量和玩家体验。
33 3
|
10天前
|
存储 人工智能 Ubuntu
Linux指令学习(一)
Linux指令学习(一)
44 0
|
15天前
|
网络协议 Linux
在Linux中,如何改IP、主机名、DNS?
在Linux中,如何改IP、主机名、DNS?
|
15天前
|
域名解析 网络协议 Linux
在Linux中,我们都知道,dns采用了tcp协议,又采用了udp协议,什么时候采用tcp协议?什么 时候采用udp协议?为什么要这么设计?
在Linux中,我们都知道,dns采用了tcp协议,又采用了udp协议,什么时候采用tcp协议?什么 时候采用udp协议?为什么要这么设计?
|
15天前
|
缓存 网络协议 Linux
在Linux中,当用户在浏览器当中输入⼀个网站,计算机对dns解释经过那些流程?
在Linux中,当用户在浏览器当中输入⼀个网站,计算机对dns解释经过那些流程?
|
15天前
|
域名解析 缓存 负载均衡
在Linux中,自定义解析域名的时候,可以编辑哪个⽂件?是否可以⼀个ip对应多个域名?是否⼀个域名对应多个ip?
在Linux中,自定义解析域名的时候,可以编辑哪个⽂件?是否可以⼀个ip对应多个域名?是否⼀个域名对应多个ip?
|
8天前
|
监控 网络协议 Java
Tomcat源码解析】整体架构组成及核心组件
Tomcat,原名Catalina,是一款优雅轻盈的Web服务器,自4.x版本起扩展了JSP、EL等功能,超越了单纯的Servlet容器范畴。Servlet是Sun公司为Java编程Web应用制定的规范,Tomcat作为Servlet容器,负责构建Request与Response对象,并执行业务逻辑。
Tomcat源码解析】整体架构组成及核心组件
|
1月前
|
存储 NoSQL Redis
redis 6源码解析之 object
redis 6源码解析之 object
51 6
|
15天前
|
测试技术 Python
python自动化测试中装饰器@ddt与@data源码深入解析
综上所述,使用 `@ddt`和 `@data`可以大大简化写作测试用例的过程,让我们能专注于测试逻辑的本身,而无需编写重复的测试方法。通过讲解了 `@ddt`和 `@data`源码的关键部分,我们可以更深入地理解其背后的工作原理。
15 1

热门文章

最新文章

下一篇
DDNS