🎬 乀艨ic:个人主页
⛺️摸了很久都到3月开始啦,跟大家道一声晚来很久的新年快乐,今年大概会高产的~
⭐️来看看这次的博客吧~
文章目录
🌳前言
这次就先把鸽了很久的Linux指令部分稍微更新一下,毕竟只有这个有人给我催更来着()
注:Linux的不同发行版本的指令可能有所不同,本次是按照CentOS7的标准来进行追述的。
🌳cp 指令
语法:cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录
说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
常用选项:
-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i 或 --interactive 覆盖文件之前先询问用户
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理
cp的选项相对来说也是比较繁多,我就写几个相对更加常用的选项吧~
🌲cp
功能:将一个已经存在的文件拷贝到指定路径的文件夹中
这里有一个空文件夹test,现在使用cp将test.txt复制到test文件夹中,如下图:
可以注意到cp只是将原有的文件拷贝一份到其他文件夹,而不是剪切,原本目录下的文件还是存在的。
如果后面跟随的路径结尾是一个不存在的名字,Linux会认为前面部分是路径,最后一个是文件名字,并把复制文件重命名。
实际上就会做到拷贝到前面部分的路径同时把文件重命名,如下图:
如此就会实现重命名的效果,当然后面的mv指令也有这个效果。
🌲cp -r
功能:将文件夹包括里面的内容递归式的拷贝到指定路径
现在root文件夹下面有两个文件夹dir1与dir3,而且dir1内部也拥有其他文件dir2,这个时候如果我想把dir1包括内部的所有文件拷贝到dir3就需要**-r**选项,如图:
🌳mv 指令
功能:
-
视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
-
当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
-
当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。
常用选项:
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖
mv指令跟cp指令有很多相似之处,下面我展示一下它拥有的两个较为重要的功能
🌲剪切功能
文件夹中有一个 test.txt 的文件与 test 的文件夹,我们使用 mv 将 test.txt 剪切 到 test 文件夹中
mv 操作如下图:
可以看到 mv 指令是将文件剪切到目标文件夹,原本文件就会消失掉,这是跟 cp 指令的区别之一。
🌲重命名功能
mv 也可以对文件进行重命名。
原本文件夹中只有一个名为 test.txt 的文件,我们使用 mv 指令进行重命名。
可以看到这里已经实现了重命名功能。
🌳cat 指令
语法:cat [选项][文件]
功能: 查看目标文件的内容
常用选项:
-b 对非空输出行编号
-n 对输出的所有行编号
-s 不输出多行空行
这里有一个名为 test 的文档文件,下面是文件中的内容:
如图,使用 cat 命令就可以将文件中的内容打印到命令行上
大家也可以自行尝试一下cat的不同选项,效果都十分明显~
🌳tac指令
语法:tac [选项][文件]
功能: 倒着查看目标文件的内容
tac 指令跟 cat 指令的效果基本一样,只不过 cat 是正序打印,tac 是倒叙打印。
为了方便演示,将test文档中的内容做一些标识:
使用 tac 指令后,如图:
🌳less指令
语法: less [参数] 文件
功能:使用less可以随意浏览文件,功能与 cat 类似。
选项:
-i 忽略搜索时的大小写
-N 显示每行的行号
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
q:quit
使用 less 可以去浏览大型文件,使用上下键就可以向上或向下查询。
按q就可以直接退出。
也可以输入“ / ”跟上内容进行文件内容的搜索。
🌳tail指令
tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.
语法: tail[必要参数][选择参数][文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
选项:
-f 循环读取
-n<行数> 显示行数
我们使用如下图的一个 test 文件进行测试
注:下一个 head 指令也同样会使用该文件。
如图:
这里就会把 test 的后十行打印出来。
🌳head指令
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾。
语法: head [参数]… [文件]…
功能:head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
选项:
-n<行数> 显示的行数
注:这里使用的文件与上面的 tail 语句使用相同的文件演示
如图,这里展示了文档的前十行:
🌳find指令: -name
Linux下find命令在目录结构中搜索文件,并执行指定的操作。
Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。 即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限。
在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系 统可能会花费很长的时间(这里是指30G字节以上的文件系统)
因为find命令过于多,这里就先只讲述相对容易理解与使用的一个。
语法: find pathname -options
功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
-name 按照文件名查找文件
为了方便演示,这里我们就在 /root 中去查询 test 的位置。
可见 find 会从指定的路径去递归式的查询所有的符合条件的文件。
注:如果在查询的时候输入 * ,则会进行前缀匹配,比如 test . * 就会查询所有 test 开头的文件,如下:
可见,这里会递归式的匹配所有 test 开头的文件。
🌳grep 指令
这里可以贴一个 grep 详细使用文档: grep 使用文档
语法: grep [选项] 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行
这里就详细的谈一下不加选项以及上面的共四种用法:
注:grep 的功能均用如下图的 test 文档进行测试
🌲 grep
功能:直接匹配文件中的关键字并输出到屏幕上。
grep 实现的是一种贪心匹配,会遍历文件匹配所有满足条件的行。
🌲 grep -i (ignore)
功能:忽略大小写的不同,所以大小写视为相同。
这里就输出了匹配‘ a ’ 或 ’ A '的行内容。
🌲 grep -n
功能:输出行号
注:这里的行号是文件内部的行号。
🌲 grep -v
功能 :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行。
如下图:
这样就会反向匹配,输出没有关键字符串的行内容。
🌳zip/unzip指令
语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
注:CentOS7中没有自带的 unzip 指令,需要手动输入如下指令:
yum -y install unzip
举例:
将test2目录压缩:zip test2.zip test2/ *
解压到tmp目录:unzip test2.zip -d /tmp
🌳结尾
指令就到这里先结束了,以后还会更新更多关于Linux操作系统的相关知识,点一个关注避免错过哦~
感谢观看,喜欢的话可以给一个大大的三连哦~
期待我们的下次相遇,喜欢的请点个关注再走哦!之后会持续更新更多的内容!
个人主页:传送门