Linux基本指令(二)

目录

  • 前言
  • 1. rmdir & rm 指令
    • 1.1 * 通配符
  • 2. cp 指令
  • 3. mv 指令
    • 3.1 作用一:移动文件
    • 3.2 作用二:文件重命名
  • 4. cat 指令
  • 结语:

前言

欢迎各位伙伴来到学习 Linux 指令的 第二天!!!

在上一篇文章 Linux基本指令(一) 当中,我们学会了 ls去去查看当前路径下的文件名,还有 ls 的一些选项参数, 我们还学会了使用 mkdir 创建一个目录,touch 创建一个普通文件,cd 进入到某一个路径下,并通过 pwd 来查看自己当前所处的路径位置!

那讲了这么久,有人要说啦! ”你讲了这么久!!我创建了那么多文件,我是会创建了,那删除呢???你倒是告诉我怎么删除文件捏!!!

别急,我们这就来开启今天的学习。
今天我们要学习的是……


1. rmdir & rm 指令

我们先不着急怎么使用 这两条指令,我们先来看看它的作用!!
Linux基本指令(二)_第1张图片
我们本来想通过 rmdir 来删除 d1,但却发现,哎!报错了??!!?

报错说,目录d1不为空,所以不能移除?!!

所以!!!

rmdir				# 默认删除空目录

那我要删除不为空的目录,怎么办呢??? —— 我们后面讲。。。


先再来看一个指令
Linux基本指令(二)_第2张图片
我们看到,通过 rm,我们的 text 文件不见了!!

因此,我们便可以知道!

 rm text.txt			#删除普通文件

那我们再用它来删除 d1目录

在这里插入图片描述

我们还是看到报错了,它不让我们删!那就再来!

Linux基本指令(二)_第3张图片
这次,我们发现终于可以删除了! d1 这个目录已经不存在了!!!

OK,我们赶紧来看看这一行指令

// rm可以带 -r 和 -f 选项,-r表示递归删除。
// 有时候删除,系统会提示我们是否确认删除,那我现在不想要它问我,我就想要直接删, 而当中的 -f 就是表示,你不要问我,直接给我删除就好了!!
rm -rf d1

1.1 * 通配符

有没有这样一种可能,假设我的目录里头有很多 .c文件,我要把它们全部删除,但是呢,一个一个删除,又很麻烦,且很累,那有没有一种方法,能让我一次性删除他们呢???

答案是,有的!

那就是 Linux的一种通配符 *

在这里插入图片描述

那通配符除了可以一次性删除文件,还有什么用呢?

删除之前,我们能不能先将所以的 .c 文件显示出来看看呢?

Linux基本指令(二)_第4张图片

我们可以看到所有的 .c 文件都被显示在屏幕上,全部都是以 .c 结尾的文件
所以!

 ls *.c				# 显示所有的 .c文件

所以我们大概了解了 通配符* 是什么,有什么作用了!
那我就想,那我能不能借助它会匹配的这个功能,将所有的 .c 删除掉呢?? —— 答案是,当然可以!!

Linux基本指令(二)_第5张图片
我们看到了刚刚存在的 20 来个 .c 文件,现在全部不存在了!!!

[outlier@localhost test]$ rm -rf *.c				# 删除所有的 .c文件

那我们赶紧总结一下

rm -rf *.c			     * 就是一种通配结构

那有人要问了,什么是通配结构呢??
==》
通配结构,就是什么都匹配的上,只要你最后满足以 .c (或者其他条件)结尾的,那就可以了!!!

2. cp 指令

cp 指令就是一条拷贝命名
cp src dst # 将 src路径下的文件 拷贝到 dst 路径下

Linux基本指令(二)_第6张图片
讲 cp 指令之前,先简单说一下

cat hello.c 			# 就是查看目标文件的内容

Ok,我们看到当前的路径下,有hello.c 这个文件。我们现在想把他拷贝到 dir里

Linux基本指令(二)_第7张图片

cp hello.c ./dir/
我们可以看到,通过上述该指令,我们讲 hello.c 以 ”相对路径“ 的方式 拷贝到了 dir目录中,并且显示了dir 目录中的 hello.c 文件

那我们能不能以绝对路径的方式拷贝呢??? —> 答案是,当然可以!

Linux基本指令(二)_第8张图片

我们以绝对路径的方式,将同样的文件,拷贝到了家目录下,家目录下也拥有了 hello.c 文件

那有人就问了,文件夹能不能拷贝呢???
==》
答案是, 也可以的!!

Linux基本指令(二)_第9张图片

在这里,我们怎么看到了,拷贝报错了呀!!?
==》
答案很简单,与 rm 相似,如果是删除一个目录,我们需要通过 -r 递归来删除,那我们再试一遍

Linux基本指令(二)_第10张图片

我们发现,这次成功了。且看到上级目录下,也有 dir 这个目录,那拷贝后,我当前路径下的 dir 是否还存呢??

Linux基本指令(二)_第11张图片
我们看到当前路径下的 dir 还是存在的!!!并不会因为 cp 指令 拷贝了一份数据到别的路径下,就导致原本路径下的数据丢失了。

3. mv 指令

mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命
令,经常用来备份文件或者目录。
它的作用就类似 windows 平台下的 剪贴!!!

3.1 作用一:移动文件

在这里插入图片描述
同样的,当前目录,有一个文件,一个目录,如果此时,我要将 hello.c 剪贴到 dir目录下,该怎么做呢?

Linux基本指令(二)_第12张图片

[outlier@localhost test]$ mv hello.c dir/
//我们可以看到,通过该指令,我们将 hello.c 移动到了 dir 路径下,同时,当前路径下已经没有该文件了
[outlier@localhost test]$ mv dir/hello.c .
//我们也可以通过 ”相对路径“ ,将 dir 中的文件 移动到 与dir同级的目录,(.)即当前目录

Linux基本指令(二)_第13张图片

Linux基本指令(二)_第14张图片
我们可以看到,目录的移动呢,操作也是一样的。


3.2 作用二:文件重命名

Linux基本指令(二)_第15张图片

[outlier@localhost test]$ mv hello.c world.cpp
[outlier@localhost test]$ mv dir d1
//我们可以看到,对已经存在的 文件名 或者 目录 进行 mv,就能起到重命名的作用!!!

4. cat 指令

cat -n 文件名  				# 显示文件的同时,将对应行号显示出来

Linux基本指令(二)_第16张图片

tac 文件名  			# 将文件逆置显示

Linux基本指令(二)_第17张图片

看到这里,有人就问了,哎哎哎,那你这 tac 将文件倒过来显示,有什么用呢???

那大家可以理解为,假如,这是一份成绩单,里面有非常多的人,我现在就要倒数前几个人的数据,那我倒着将文件显示出来,是不是就方便我查找许多了呢??

当然,这只是 tac 的一个非常小的用处,更大的用处,大家慢慢感受


结语:

OK,本章的基本指令就讲到这。如果能给你带来一定的帮助,或者是收获,我很开心。
同时,觉得对你有帮助的伙伴们,也可以 点赞 + 收藏⭐️ + 关注➕ 支持一下!
感谢各位观看!!

你可能感兴趣的:(Linux系统,linux,服务器,bash)