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
指令将递归地显示该目录下的所有子目录和文件。