Linux文件操作命令@touch、cat、more、cp、mv、rm

目录

  • 命令touch
    • 语法形式
    • 作用
  • 命令cat
    • 语法形式
    • 作用
  • 命令more
    • 语法形式
    • 作用
  • 命令cp
    • 语法形式
    • 作用
      • 复制文件
      • 复制文件夹
  • 命令mv
    • 语法形式
    • 作用
      • 移动文件
      • 移动文件夹
      • 情况三
  • 命令rm
    • 语法形式
    • 作用
      • 删除文件
      • 删除文件夹
      • -f 选项
      • 通配符 *
  • 总结



命令touch


语法形式


touch   Linux路径

》touch命令无选项,参数必填,表示要创建的文件路径(相对路径、绝对路径、特殊路径符都可以使用)。


注意:特别注意这个命令中关于 Linux 路径的理解。下面结合命令进行讲解。






作用


创建文件

如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第1张图片

我们用 ls 命令查看当前工作目录下的所有文件,接下来使用 命令 touch 创建一个 test.txt 文件。如下:


Linux文件操作命令@touch、cat、more、cp、mv、rm_第2张图片

我们用命令 touch ,创建了一个文件test.txt,接着用 ls 的命令查看当前目录确实出现了 test.txt 的文件。那么,

当我一开始学习的时候,我会有这么一个疑问?上面执行的命令:

touch test.txt

这个命令里,test.txt 不是一个文件名吗?怎么和命令的语法格式所说的 Linux路径 不一样啊?

对于这个疑问,我觉得对于该命令的语法格式的 “ Linux路径 ” 的说法,换成 “ 创建的文件存储的Linux路径 ”。或许会更方便理解一点。
意思就是在上面的命令参数中,我们使用的 Linux的相对路径,等同于:

touch /home/blue/test.txt

意思是:创建一个文件 test.txt 存放到 /home/blue/ 这个路径下。而因为 /home/blue/ 是相对路径,因此可以省略不写。



了解了这个,那我们便可以在当前目录下,通过参数,即指定Linux路径底下创建文件。比如我们在当前目录下,在 Music 文件夹底下创建一个文件 hello.txt,如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第3张图片

原先用 ls 查看 Music 文件夹底下,没有任何文件,通过指定的目录底下,我们在Music文件夹下成功创建了一个 hello.txt 文件,用 ls 再查看 Music 文件夹时,存在 hello.txt 文件,实验成功。
以上便是对于 touch 命令的学习。





注意:

跟命令mkdir区分开来,mkdir用于创建文件夹/目录,而 touch 用于创建文件






命令cat


语法形式

cat   Linux路径

》cat 同样没有选项,只有必填的参数。参数表示:被查看的文件路径(相对路径、绝对路径、特殊路径符都可以使用)。



作用


查看文件内容

比如:
Linux文件操作命令@touch、cat、more、cp、mv、rm_第4张图片

我想要查看,在当前工作目录下的 test.txt 里面的内容。(我在test.txt文件里面写了“hello world!”)

那么只需要输入命令:

cat test.txt

然后按下回车即可,如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第5张图片

test.txt 里面的内容便弹出终端窗口了。

同样的,不要误会了命令中的 test.txt 参数了,跟前面讲述的一样,是打开相对路径下 test.txt 的文件。描述的是 Linux的路径。


同样的,我们可以使用绝对路径,去打开其他文件夹下的文件内容。比如我打开在当前目录下的 Music 文件夹下的 hello.txt 文件,查看文件内容:

在这里插入图片描述

成功打开了 Music 文件夹下的 文件并且显示。

以上便是对于 cat 命令的学习。






命令more


语法形式


more   Linux路径

》同样的没有选项,只有必填的参数。参数表示:被查看的文件路径(相对路径、绝对路径、特殊路径符都可以使用)。



作用

more 命令的作用和 cat 命令一样,是 查看文件内容 的。但是两者有所不同:

① cat 命令查看内容时,是将内容全部显示出来。
② more 命令查看内容时,支持翻页,如果文件内容过多,可以一页页的展示。

也就是说,当查看的文件内容过多时,more 命令查看更加的方便。比如在Linux系统内置有一个文件,路径为: /etc/services

我们对于这个文件,分别用 cat 命令 和 more 命令进行查看。
由于文件内容过于庞大,因此就不在这里演示了。只给出命令,

用 cat 命令查看:

cat /etc/services

用cat查看时,如果遇到提示说权限不够,切换到最大权限用户root即可,切换指令如下:

su - root

然后输入用户的密码(虚拟机的登录密码)即可,退出root用户,用 “ ctrl + d”,或者用命令:

su - 用户名

即可。



用more 命令查看

more /etc/services

在查看的过程中,

》用空格翻页
》通过键盘按键q退出查看


以上便是对于 more 命令的学习。





命令cp


语法形式

cp  [ -r ]   参数1   参数2


-r 选项,可选(写或者不写都可以,能运行但是功能不一样),用于复制文件夹使用,表示递归(英文单词:recursion)

》参数1,Linux路径,表示被复制的文件或文件夹

》参数2,Linux路径,表示要复制去的地方。


比如,要将A路径下的a文件或文件夹,复制到B路径下,则
参数1填a文件或文件夹的Linux路径,
参数2填B的Linux路径。



作用

复制文件或文件夹



复制文件

比如

Linux文件操作命令@touch、cat、more、cp、mv、rm_第6张图片

上图所示,在Music文件夹底下只有一个 hello.txt文件,现在我想要将blue目录底下的的文件 test.txt 复制一份到 Music文件夹底下。如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第7张图片

用命令:

cp test.txt Music

将相对路径(用户的工作目录)底下test.txt 文件复制一份放到 Music 文件夹底下。
注意使用的是相对路径,不要混淆认为是文件名啥的了。
然后再度查看Music文件夹底下,发现多了一份 test.txt 文件,复制成功。



复制文件夹

那我们再接将工作目录底下的 Pictures 文件夹 也复制一份到 Music 文件夹底下吧。如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第8张图片

我们发现复制失败,那是因为 Pictures 是一个文件夹 不是文件。这两者要区分开了。要复制文件夹值时,得用到 -r 选项。如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第9张图片

使用命令:

cp -r Pictures Music

才能复制成功,然后打开 Music 文件夹下的内容,多了一个文件夹 Pictures,复制成功。



以上便是对于 cp 命令的学习。






命令mv


语法形式

mv  参数1   参数2


》参数1,Linux路径,表示被移动的文件或文件夹所在的Linux路径。
》参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在。


tip: mv 命令来自英文单词:move



作用


移动文件或文件夹


移动文件

如下,将blue目录下的文件 test.txt 移动到,该目录下的Downloads文件夹里面。

Linux文件操作命令@touch、cat、more、cp、mv、rm_第10张图片
执行命令:

mv test.txt Downloads

后再显示工作目录下的内容,原先的 test.txt 文件不见了,在用 ls 显示 Downloads 文件夹内的内容,发现了 test.txt 文件。即成功将工作目录(blue)下的 test.txt 文件移动到 Downloads 文件夹里面。



移动文件夹

下面,我们用同样的命令,对文件夹进行移动。如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第11张图片

如图,执行命令:

mv Music Desktop

回车后,blue目录下的 Music 文件夹 成功移动到了 Desktop 文件夹里面了。


情况三

注意:
当参数2,即移动到的地方(Linux路径)不存在时,会有改名的效果。
即被移动的文件/文件夹,名称会被更改为那个不存在的名称,从而保证了目标的存在。如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第12张图片

当执行命令:

mv one.txt 1.txt

回车时,将blue目录下的 one.txt 文件,移动到blue目录下的 1.txt 文件,但是移动的目的地 1.txt 并不存在,因此最终的效果是,文件 one.txt 名称被更改为 1.txt。


以上便是对命令 mv 的学习。






命令rm

语法形式

mv  [ -r -f ]   参数1   参数2 … 参数N


》同 cp 命令一样, -r 选项用于删除文件夹

-f 表示force,强制的意思,即强制删除(不会弹出是否确认删除的提示信息)

注:
① 普通用户删除内容不会弹出提示,只有root管理员用户删除内容才会有提示,
所以一般普通用户用不到 -f 选项。(用root用户删除时,该选项也要慎用,最好就是不用。)

》参数1、参数2、…、参数N,表示要删除的文件或文件夹路径,按照空格隔开。
即可一次新删除多个文件/文件夹。


tip: mv 命令来自英文单词:move



作用


删除文件或文件夹


删除文件

如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第13张图片

在blue目录下,有个文件 1.txt。现在我看他不爽,想把它删咯,执行命令:

rm 1.txt

回车后,再查看blue目录下的内容时,1.txt 文件没了,即完成文件删除的操作了。



删除文件夹

现在我看着blue目录下的 Downloads 文件夹也不爽,想要删掉这个文件夹,也执行上面的命令:

rm Downloads

如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第14张图片

我们么发现,终端窗口显示删除失败。这是因为 Downloads 是文件夹,不是文件。要注意两者的区别。
要实现文件夹的删除,得加上 -r 选项。即执行命令:

rm -r Downloads

如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第15张图片
删除后再查看blue目录下的内容,发现 Downloads 文件夹成功删除了。



-f 选项

下面我们再学习学习,命令选项中 -f 的使用情况。
首先得切换到 root 用户。执行命令:

su - root

再输入用户密码即可。
如下,用 ls 显示 /home/blue 目录下的内容:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第16张图片

接着我们不使用 -f 选项,删除该目录下的,test.txt , 看图发现,这一次回车后终端多了一步提示是否删除的选项。输入 y(yes)后才成功删除。


我们试着使用 -f 选项,删除一个文件夹,如下:

Linux文件操作命令@touch、cat、more、cp、mv、rm_第17张图片
我们发现,这一次,在没有任何提示的情况下,成功删除了 test 文件夹。
再三强调,使用root用户删除东西时,尽量不要使用 -f 选项,这是一件很恐怖的事情。



通配符 *

有一种情况,比如要删除很多个文件、文件夹,这些文件和文件夹中大都有一小部分的共同名称,那么有没有一种方法,根据这个特征,一次性全部删除呢?有!
就是rm命令搭配,通配符*

rm命令支持通配符 ,用来做模糊匹配
符号* 表示通配符,即匹配任意内容(包含空),示例:
test*,表示匹配任何以test开头的内容
*test,表示匹配任何以test结尾的内容
*test*,表示匹配任何包含test的内容


命令1:

rm test*

表示删除所有名称以test开头的文件。 (因为没有带 -r 选项,所以带test开头的文件夹不会被删除)


命令2:

rm *test

表示删除所有名称包含test的文件 。


命令3:

rm *test*

表示删除所有名称中带有test的文件 。



以上便是对 rm 命令的学习。
也是本篇文章,对于文件操作的命令学习的结尾。下面对以上知识进行一个大体的总结。









总结

1、touch命令

》用于创建一个新的文件。
》语法: touch   Linux路径
》参数必填,表示要创建的文件存放的路径。



2、cat 命令
》用于查看文件内容。
》语法: cat  Linux路径
》参数必填,表示要查看指定Linux存储的路径下的文件



3、more 命令

》用于查看文件内容,可翻页查看。
》语法: more  Linux路径
》参数必填,表示要查看指定Linux存储的路径下的文件
》与cat命令的区别是,支持翻页。

(以上的路径,相对路径、绝对路径和特殊路径符都可以使用。)



4、 cp 命令

》用于复制文件或文件夹
》语法:cp [ -r ]   参数1   参数2
》 -r 选项,可选,用于复制文件夹使用,表示递归
》 参数1::Linux路径,表示被复制的文件或文件夹
》参数2,Linux路径,表示要复制去的地方



5、mv命令

》用于查看文件内容
》语法:mv   参数1   参数2
》参数1,Linux路径,表示被移动的文件或文件夹
》参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在



6、rm命令

》用于删除文件或文件夹
》语法:cp [ -r -f ]   参数1 参数2 … 参数N
: -r选项,可选,文件夹删除
: -f选项,可选,用于强制删除(不提示,一般用于root用户)

》参数,表示被删除的文件或文件夹路径,支持多个,空格隔开
》参数也支持通配符 *,用以做模糊匹配

你可能感兴趣的:(Linux操作系统随记,linux)