linux笔记4--shell命令1

一. 目录

1.说明

目录:指定要显示列表的目录,也可以是具体的文件
注:
1.绝对路径(全):
盘符:\文件夹…\文件名.文件后缀
2.相对路径(不全):
一定要设置故事背景前提,即你在哪?
相对于你而言,你现在在哪,你的目标相对于你而言在哪?

例如:
1.qq音乐桌面版的位置
①绝对路径:
D:\software\QQMusic\QQMusic1944.15.37.39\QQMusic.exe
②相对路径:
       我在software文件夹,则相对路径为:
QQMusic\QQMusic1944.15.37.39\QQMusic.exe
       我在QQMusic文件夹,则相对路径为:
QQMusic1944.15.37.39\QQMusic.exe
2.故宫的位置
①绝对路径:
地球亚洲中国北京市东城区景山前街4号
②相对路径:
       我在上海市,则相对路径为:
北京市东城区景山前街4号

2.盘符

linux中没有盘符的概念,linux一切皆文件,所有东西(包括驱动在内)都由文件和文件夹组成
注:
windows中有分盘的概念(例如:C盘、D盘、E盘等),windows还可以通过"盘符:路径的方式寻找一个文件目录或者程序。----例如: D:\software\QQMusic 就可以看出qq音乐这个软件在D盘software文件夹下的QQMusic文件夹中            " \ " <—>“在…下边”

3.linux根目录(以Ubuntu为例)

①说明

“/” 是linux的根目录,根目录下的东西随便删一个linux都可能会炸。“/home"是我们常见的根目录下的一个文件夹
②查看系统根目录的命令----- cd /( cd 可以简单理解为切换目录)
在这里插入图片描述
③1.txt的位置即为”/home /aria/ 1.txt“     第一个"/"代表根目录
在这里插入图片描述
在这里插入图片描述

②根目录下一些文件夹的解析

/home

主目录,显示所有用户目录
注:
①windows中也有,两者从功能上来说没有任何区别
在这里插入图片描述
②windows和linux中都可以有很多用户,然后注销
在这里插入图片描述
linux在这个位置可以增加新用户(点击"+“或者”添加用户按钮”)    我这里没有显示是因为我这个账户不是管理员(通常是用户名为root或者属于sudo组的用户)身份,权限不够
在这里插入图片描述

/root

root用户的主目录(管理员,拥有最高的权限)
注:
①linux为了保证系统安全,将管理员(root,设置好后,通过"su命令+回车+password“即可切换到管理员身份)和普通用户进行了区分。windows没有进行区分,新机注册的账户默认就具备管理员身份。
②lilnux中最危险的操作(删库跑路):不要轻易尝试
sudo rm -rf/* 调用管理员身份,输入密码

/mnt

挂载目录(主要挂载目录)
注:
①挂载–外在设备和电脑进行连接
②磁盘也属于挂载
③Android机中,使用root权限,看到的sdcard存储卡就放在mnt

/media

媒体目录 (可移动设备挂载点)
注:
和/mnt的联系:mp3等插电脑上自动识别的挂载,存储在这里;反之,存在/mnt中

/var

可变目录(存放一些经常变化的文件,例如:log日志文件)

/cdrom

光盘文件目录

/etc

系统文件配置目录
注:
windows的配置信息可以在注册表或者c盘windows文件夹下找到

/lib (/lib32–32位的,/lib64-64位的)

库目录,存放系统应用程序库文件
注:(类似,但实际不太等同)
lol一键写符文需要下载wegame, wegame和lol绑定.wegame依赖就存放在/lib中

/lost+found

遇到突发情况(如:断电),临时文件存放处

/boot

启动目录

/proc

虚拟文件夹(伪文件系统),存放一些跟内核有关的东西(例如:监控系统状态等信息)

/bin

二进制目录(可以理解为GNU的一些工具,例如:ls命令实际上也在bin目录里)
注:
①命令也是文件
②二进制文件不可更改,相当于已经编译好的程序,直接运行就行
③这里存放着许多系统级别的可执行文件,这些可行性文件通常是所有用户都可以执行的,也就是说,它们是用户级的程序

/sbin

系统二进制目录(存放GNU高级管理员使用的命令或工具)”s"指代"super"

/snap

乌邦图的产物
在这里插入图片描述

/srv

服务(本地服务)目录

/usr

用户二进制目录,主要存放系统自带的命令行工具(包括GNU工具)和程序

/opt

可选目录,主要存放第三方软件包(自己下载的)

/dev

设备目录(跟硬件有关,例如:创建一些设备节点、硬件设备 )
注:
等同于windows设备管理器里的东西
在这里插入图片描述

/run

运行目录,存放运行临时文件,这些数据重启后不需要保留

/tmp

临时目录,存储用户和系统创建时的通用临时文件,这些文件在重启时可能仍然需要存在,或者需要在重启后由应用程序清理

二. ls命令–操作文件夹

1.说明

①不同颜色代表的文件类型:
    蓝色:目录(或者说文件夹)
在这里插入图片描述
在这里插入图片描述
注: english.txt为一般性文本文件,其余为文件夹
②"."开头的文件(文件夹) : 隐藏文件(文件夹)
在这里插入图片描述
③上下键 : 可以快速显示最近输入过的命令
④PgUp(PgDn): 在终端翻页,通常用于浏览文本内容或历史命令。(例如,在使用 less 或 more 命令查看文件内容时,您可以使用 PgUp 和 PgDn 键来向上或向下翻页。同样,在浏览 man 页面或使用 htop、vmstat 等命令时,也可以使用这些键。)
⑤ctrl+l(或者clear+回车) : 清屏

在这里插入图片描述
解析:
total :total
详细信息: 所有分段 文件访问权限: r(read)读、w(write)写、x(excute)执行
                第一列详解 这里的用户可以是个人,也可以是系统服务的账户。 组是用户的集合。文件所属组的权限类似于windows中共享文件夹中所有用户的权限。

2.ls命令(后面可以跟绝对路径也可以跟相对路径)

使用频率较高的:
① ls(list的缩写) : 显示当前目录下的所有文件和文件夹,不包括隐藏文件
在这里插入图片描述
②ls -a : 列出所有文件,包括以"." 开头的隐藏文件
在这里插入图片描述
③ ls -l : 列出当前目录可见文件详细信息(文件大小以B为单位)
在这里插入图片描述
注:在大多数Linux系统中,ls -l和ll通常是等效的,它们都用于显示目录中的文件列表及其详细信息。ll实际上是一个别名,通常指向ls -l。然而,有时候它们可能会显示不同的信息。这可能是因为ll的具体定义可以根据用户的shell配置而变化。在大多数情况下,ll是一个用户自定义的别名,可能包含一些额外的选项或者参数,比如显示隐藏文件、颜色高亮显示等,这些选项可能导致ll输出的信息比ls -l多。
        在Ubuntu系统中,ll是一个由系统预定义的别名,通常指向ls -alF。而ls -l仅仅列出目录中的文件及其详细信息,而不包括隐藏文件(以.开头的文件)。但是,ll会列出所有文件,包括隐藏文件,并且在文件名后面添加了一些特殊字符以标识文件类型,比如/表示目录,*表示可执行文件等。因此,如果目录中包含很多隐藏文件,那么ll输出的信息条数可能会比ls -l多。
Ubuntu:在这里插入图片描述
kali:

在这里插入图片描述

④ ls -al(ls -a -l 的缩写) : 列出所有文件(包括隐藏文件)的详细信息
在这里插入图片描述
⑤ ls -hl : 列出详细信息并以可读大小显示文件大小(以K,M,G为单位,提高信息的可读性)
在这里插入图片描述
⑥ls -m : 水平列出文件,每行尽可能多,相互用逗号和一个空格分隔
在这里插入图片描述
⑦ls -1 : 单列输出(输出长格式列表)
在这里插入图片描述
⑧ls -x : 多列输出,横向排序
在这里插入图片描述
⑨ls -ltr : 按修改时间列出文件和文件夹详细信息
在这里插入图片描述
⑩ls --color=auto : 列出文件并标记颜色分类
在这里插入图片描述
⑪ls --human-readable --size -1 -S --classify : 按文件大小排序(从大到小)
在这里插入图片描述
⑫du -sh * | sort -h : 按文件大小排序(从小到大)
在这里插入图片描述
进阶:
①ls 文件夹名 -F1(区分一下目录下的文件夹和文件) -R(重新遍历)
例如:
在这里插入图片描述
注:
绿色带星号:意思是这个文件夹可以直接双击运行打开
带引号:意为副本(不是原文件,是由某个文件复制粘贴而来)
②ls 文件夹名 -FR
例如:
在这里插入图片描述
③ls 文件夹名 -lar (-r 作用是:逆序排列)
例如:
在这里插入图片描述
④ls 文件夹名 -laR
例如:
在这里插入图片描述
⑤ls 文件夹名 -alF
例如:
在这里插入图片描述

3.ls进阶用法–过滤

文件扩展匹配

①文件扩展匹配符:
’ ?’ :可以代表一个字符
’ * ’ :可以代表多个字符
②用法举例:(找出所有副本文件)
情景一:
~/Documents/pdf文件夹下有:
fhs-2.3.pdf
fhs-2.3_copy1.pdf
fhs-2.3_copy2.pdf
在这里插入图片描述
情景二:
~/Documents/pdf文件夹下有:
fhs-2.3.pdf
fhs-2.3_copy1.pdf
fhs-2.3_copy2.pdf
1.txt
在这里插入图片描述

通配符匹配(使用指定字母范围匹配)

①元字符通配符:
’ [ ] ':里面填写字母范围
②用法举例:
情景一:(筛选出文件夹名称的第二个字母范围在a~x之间的.txt文件)
~/Documents/txt文件夹下有:
fack.txt
fbck.txt
feck.txt
fxck.txt
fzck.txt
在这里插入图片描述
情景二:(筛选出文件夹名称的第二个字母范围不在a~x之间的.txt文件)
~/Documents/txt文件夹下有:
fack.txt
fbck.txt
feck.txt
fxck.txt
fzck.txt
在这里插入图片描述

4.ls与l

在这里插入图片描述

三. cd命令–操作文件夹

1.说明

①cd 意为切换用户当前工作目录
②下述两者作用相同:
linux:“cd 文件夹名/文件夹名+回车”
在这里插入图片描述
windows:“盘符:\文件夹名\文件夹名+回车”
在这里插入图片描述
在这里插入图片描述
③pwd 显示当前目录的绝对路径
在这里插入图片描述

2.cd命令(后面可以跟绝对路径也可以跟相对路径)

①进入用户主目录:
cd+回车
cd ~+回车
cd /home/用户名 +回车
②进入根目录:
cd /
③进入当前目录("."单点符,表示当前目录):
cd .
④进入上一目录(“. .“双点符,表示当前目录的父目录(若当前目录为“/“,则执行完后还在“/”)):
cd . .
⑤返回上两级目录:
cd . ./. .
⑥返回到上次操作的目录:
cd -
在这里插入图片描述

四.cd命令和ls命令练习

单独命令:在这里插入图片描述>在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
组合命令:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五. touch命令–操作文件

用途:创建一个新的空文件
在这里插入图片描述
注意:
问:若practice1.txt已经存在,并且在里面写入数据,再次执行touch practice1.txt,数据还在吗?
答:数据还在只是时间更新了 touch命令不会覆盖
在这里插入图片描述
在这里插入图片描述

六. mkdir命令–操作文件夹

根目录下创建文件夹需要管理员权限
① mkdir(make diretories缩写),用途:创建一个空文件夹
在这里插入图片描述
②创建一个嵌套目录 mkdir -p 文件夹名/文件夹名/ … 一定是小写p
例如:
在这里插入图片描述

七. cp命令–操作文件、文件夹

①介绍:cp(copy的缩写)
②用途: 将源文件或目录(换言之:既可以复制文件,又可以复制文件夹)复制到目标文件或目录中
③格式:
cp 源文件 目标文件
cp 你想复制的文件 你想复制到哪
cp 具体文件 绝对或相对路径(目录)
cp 绝对或相对路径(目录) 绝对或相对路径(目录)
cp 绝对或相对路径(目录) 具体文件
补充说明:
①执行cp 1.txt 2.txt时:
        若2.txt不存在,则创建2.txt,并把1.txt中的内容复制过去。
        若2.txt存在,则覆盖(覆盖后时间更新)
企业里不允许这样直接覆盖,使用这种命令时前面应该加上-i,好处:覆盖前会提示(y–继续执行,n–终止执行)
在这里插入图片描述
②把某个文件夹下的所有东西复制到另一个文件夹下:
cp 源文件路径/*     目标文件路径
在这里插入图片描述
③把某个文件夹连同文件夹下的所有东西复制到另一个文件夹下:
cp -r 源文件路径    目标文件路径(-R也行)
在这里插入图片描述
④把某个文件夹下的所有后缀名相同的文件复制到另一个文件夹下:
cp -R *.文件后缀名 目标文件路径(-r也行)
例如:
在这里插入图片描述
在这里插入图片描述

八. touch、cp、ls、cd组合命令练习

在这里插入图片描述

九. linux ln(link files或者直接link)–链接文件

1.重点

设置软、硬链接的前提:原文件/文件夹必须存在
更改软链接的内容,原文件内容随之更改;反之亦然
更改硬链接的内容,原文件内容不变;反之亦然
删除原文件,软链接无法正常打开
删除原文件,硬链接内容仍可正常编辑保存

①符号链接(软链接–symbolic lnk)—相当于快捷方式(不一定指程序的快捷方式)    快捷方式本身也是一个文件
在这里插入图片描述
相当于一个链子,把link文件和实体文件绑定,双击link文件,自动跳转到实体文件(但两者并不等同) 指针
创建符号链接:ln -s 原文件/文件夹名称 符号链接文件/文件夹名称
在这里插入图片描述
在这里插入图片描述
补充:
windows中可以为整个文件夹创建快捷方式
在这里插入图片描述
②硬链接(hard link)–可以理解为创建副本(由原文件复制粘贴得来,可以把这个副本称为硬链接)
创建硬链接:ln 原文件/文件夹名称 符号链接文件/文件夹名称
在这里插入图片描述

2.区别

①硬链接只能在同一块硬盘里(同一个介质里)去创建;软链接则随便。详细内容可以参看菜鸟教程
例如:
假如有两块硬盘ab,硬盘a文件里创建的副本不能放到硬盘b里
简言之:不同存储媒体之间创建链接,只能使用软链接
②软链接可以对不存在的文件进行链接;硬链接则不可以
在这里插入图片描述

3.怎么查看软硬链接文件和原文件属不属于同一个文件?

在这里插入图片描述
硬链接文件大小和文件大小一致,说明硬链接文件直接是一个副本;硬链接文件大小和文件大小不一致,说明它是单独的一个文件。
企业里一般情况下用软链接比较多,软链接可以一眼看出来谁指向谁,看得清楚

4.链接文件的注意事项

①一个文件可能有多个快捷方式(.lnk文件),但是千万别创建软链接的快捷方式 。创建快捷方式的快捷方式多了,就容易造成混乱链接,引发各种麻烦。
②cp命令运行时要注意搞清楚我们这个文件是不是链接文件。

5.面试题(必须掌握,以后面试提问的几率非常大)

问题一:

问:软硬链接的区别?优缺点?
回答:一定要说清楚。举个例子(例如一块硬盘两块硬盘),打个比喻,抛出定义,限定范围。然后说,我还知道硬链接有什么优缺点,软链接有什么优缺点,它们分别用在什么地方。 (有时举例子时可能需要尽量说一些专业术语–看情况)

通俗回复一(智谱清言):
        硬链接(Hard Link)是文件系统中的一个目录条目,它指向与原始文件相同的物理位置。简单来说,硬链接就是给一个文件起了个额外的名字,但本质上还是同一个文件。硬链接与原始文件共享相同的inode(文件索引节点),并且占用相同的磁盘空间。硬链接不能跨文件系统创建,也不能为目录创建。
        软链接(Symbolic Link),又称符号链接或快捷方式,是一个特殊的文件,它包含了一个指向另一个文件或目录的路径。软链接就像是文件系统中的一个指针,指向了另一个文件的位置。软链接有自己的inode和磁盘空间,可以跨文件系统和分区创建,也可以为目录创建。
举例与比喻:
        假设你有一块硬盘,上面有一个非常重要的文件“报告.doc”。你可以为这个文件创建一个硬链接,就像是为这个文件制作了一个额外的标签,无论你通过哪个标签访问,看到的内容都是一样的。如果你删除了原始标签(文件),只要还有一个标签(硬链接)存在,文件的内容依然可以访问。
        而软链接则像是你在这块硬盘上放了一张纸条,上面写着“报告.doc”在某个抽屉的某个位置。当你需要查看报告时,你会根据纸条上的指示找到报告。如果原始报告被移动了,只要更新纸条上的路径,软链接仍然有效。但如果原始报告被删除了,纸条上的路径就无效了,你将无法通过软链接找到报告。
硬链接的优缺点:
优点:
-硬链接与原始文件完全相同,不需要额外的磁盘空间。
-读取硬链接的速度与原始文件相同,因为它们指向同一数据块。
-硬链接更安全,因为即使原始文件被删除,数据仍然可以通过硬链接访问。
缺点:
-不能跨文件系统创建硬链接。
-不能为目录创建硬链接。
软链接的优缺点:
优点:
-可以跨文件系统和分区创建软链接。
-可以为目录创建软链接。
-提供了更大的灵活性,因为软链接可以指向任何文件或目录,即使目标文件被移动,只要更新软链接的路径,链接仍然有效。
缺点:
-软链接可能会引入额外的复杂性和管理开销,因为需要确保链接路径的有效性。
-如果原始文件被删除或移动,软链接将失效,成为“断链”。
使用场景:
    硬链接常用于备份重要文件,或者在需要多个文件名指向同一数据时使用。
        软链接常用于创建快捷方式,比如将一个程序的不同版本链接到统一的启动器,或者将常用的大型文件或文件夹链接到更容易访问的位置。
通俗回复二(gpt3.5):
        硬链接和软链接是操作系统中用于创建文件之间关联的两种方式。
        硬链接就像是在同一硬盘上的两块相同的磁盘,在物理上它们是同一个文件,但在文件系统中却有两个不同的文件名指向它们。比如,你可以想象为一本书有两个书签,它们指向同一页。这意味着,删除其中一个书签并不会影响书的内容。
        软链接则更像是一张指向目标文件的便签,这张便签可以在不同的硬盘上。如果目标文件移动或删除,软链接将失效,就像丢失了一张便签,你无法找到目标文件。比方说,软链接就像是一张地址的标签,如果地址更改了,标签就不再有效了。
        硬链接的优点是它们不会因为原文件的删除而失效,且不占用额外的存储空间。然而,硬链接只能链接到同一文件系统中的文件,并且不能链接目录。
        软链接的优点在于它们可以链接到不同文件系统中的文件,并且支持链接目录。但是,软链接会占用一定的存储空间,并且如果目标文件被删除或移动,软链接会失效。
        因此,根据需要选择合适的链接方式。如果你需要在同一硬盘上创建链接,并且不希望链接失效,可以使用硬链接。如果你需要在不同硬盘上链接文件或目录,并且可以接受链接失效的情况,可以使用软链接。
专业回复一(gpt3.5):
        硬链接和软链接是文件系统中用于连接文件的两种方式。硬链接是指在文件系统中创建的文件副本,它们共享相同的inode和数据块。换言之,硬链接是文件系统中的多个文件名指向同一份数据,就像一个硬盘上的两个文件指向同一个物理存储位置。比如,在Linux系统中,通过ln命令创建的硬链接就是这样的。
        软链接(符号链接)则是一个指向目标文件的特殊文件。软链接文件包含了指向目标文件的路径信息,而不是像硬链接一样直接指向inode。如果目标文件被删除或移动,软链接仍然存在,但会失效。打个比喻,软链接就像是一个快捷方式,而不是实际的文件副本。在Linux系统中,通过ln -s命令创建软链接。
        硬链接的优点是它们不会因为原文件的删除而失效,且不占用额外的存储空间。然而,硬链接只能链接到同一文件系统中的文件,并且不能链接目录。
        软链接的优点在于它们可以链接到不同文件系统中的文件,并且支持链接目录。但是,软链接会占用一定的存储空间,并且如果目标文件被删除或移动,软链接会失效。
        因此,根据需求选择合适的链接方式。如果需要在同一文件系统中创建链接,并且不希望链接失效,可以使用硬链接。如果需要跨文件系统链接或支持链接目录,但可以接受链接失效的情况,可以使用软链接。

问题二:

问:如果用cp 命令复制一个软链接会出现什么情况?
问题解释:就是如果我用cp这个命令去复制一个文件的时候,这个文件可能已经被别人链接了(即我复制的这个可能是个快捷方式–就相当于在windows里把软件的快捷方式发给朋友),这时会出现什么情况?)

答(智谱清言):
        使用 cp 命令复制一个软链接(符号链接)时,默认情况下,cp 会创建一个新的软链接,而不是复制软链接指向的目标文件。这意味着复制后的软链接仍然指向原始目标文件的相同路径。如果原始目标文件被移动或删除,复制的软链接也会成为无效链接,这通常称为“断链”。
        例如,假设有一个软链接 link -> target.txt,如果你执行 cp link newlink,你会得到一个新的软链接 newlink -> target.txt,它和原始软链接指向同一个 target.txt 文件。
        如果你想要复制软链接指向的目标文件,而不是创建一个新的软链接,你需要使用 -L 选项(在 Linux 上)或 /L 开关(在 Windows 上)。例如,执行 cp -L link newfile 会复制 target.txt 文件到 newfile,而不是创建一个新的软链接。
总结来说,默认情况下 cp 命令复制软链接时,会创建一个新的软链接指向原始目标文件,而不会复制目标文件本身。如果要复制目标文件,需要使用 -L 选项。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.关于副本

下述答复来自AI
问:创建副本功能除了为了区分某几个文件是不是重复的,还有什么目的?
答:1.数据备份:创建副本是数据备份和恢复的基本策略之一。如果原始文件损坏或丢失,副本可以用来恢复数据。
2.版本控制:在软件开发和其他创作工作中,可能需要保留文件的不同版本。通过创建副本,可以保留历史版本,以便在需要时回滚到之前的版本。
3.安全性:有时为了保护重要文件不被意外修改或删除,会创建副本。这样,即使在处理原始文件时出现错误,也可以从副本中恢复。
4.共享和分发:在某些情况下,可能需要将文件分发给多个人或多个位置。创建副本可以避免在共享单个文件时出现同步问题。
5.性能优化:在某些应用场景中,为了提高访问速度,可能会将频繁访问的文件复制到更快的存储介质上,如固态硬盘。
6.工作流隔离:在不同的工作流程或测试环境中,为了避免相互干扰,可能会使用文件的副本。
7.灵活性和便携性:有时为了在不同的系统或设备上工作,需要创建文件的副本,以便在没有原始文件的情况下使用。
8.法律或合规要求:在某些行业或领域,出于法律或合规的要求,可能需要保留文件的多个副本。
总之,创建文件副本是一种常见的风险管理策略,用于保护数据不受损失,同时也为了满足各种工作和业务需求。

7.Windows链接文件

快捷方式(.lnk)—链接文件在这里插入图片描述

十.mv命令–操作文件、文件夹

说明

mv(move的缩写-移动) 命令,既可以移动也可以重命名

mv命令

mv 重命名谁 重命名成啥
例如:
在这里插入图片描述
mv 移动谁 移动到哪
例如:
在这里插入图片描述
补充说明:cd !$ (快速切换到上一条命令的最后一个路径)
步骤一:mv 移动谁 移动到哪
步骤二: cd !$
步骤三: ls
注意步骤一、二之间不可以使用ls命令
例如:
在这里插入图片描述

十一.rm命令–操作文件、文件夹

说明

① rm(romeving缩写)
②        在linux中不建议直接使用rm去删除一个文件(它不像Windows一样有个回收站,删错了可以还原),有的公司出于安全性考虑,会在其他服务器备份系统重要文件。后续会引入第三方软件(相当于Windows的回收站)替代rm–本质上来说使用的仍是mv,把文件移动到回收站
③ GNU之所以还留着rm命令,是因为rm太强了,有些命令还依赖于rm
④虽然 rm -rf 命令很危险,不推荐使用,但如果库文件太多,并且你已经再三确认真的要删除某个文件或者文件夹,此时则应另当别论。

rm命令

1.删除文件
①rm 文件名 –不推荐
②rm -f 文件名( 强制删除且不带还原,太危险)不推荐
③rm -i 文件名( 删除前会询问)推荐 一定要养成rm -i的习惯
④rm -i -f 文件名( 输入 -i 以后就别再输入 -f 了,因为 -f 是强制删除,它俩会冲突)不推荐
在这里插入图片描述
2.删除空文件夹
①rmdir 文件夹名/( rmdir只能删除空目录)不推荐
在这里插入图片描述
②rm -r 文件夹名/ (-r 遍历删除文件夹和它下面的子文件)–不推荐
在这里插入图片描述
③rm -rf 文件夹名/ –不推荐
在这里插入图片描述
④rm -r -i 文件夹名/ –推荐
在这里插入图片描述
3.删除某个文件夹及其下面的子文件
① rm -i -r 文件夹名/ (删除前会一个一个询问) –推荐 一定要养成rm -i的习惯,如果一定要递归删除,一定要确认一下递归目录
在这里插入图片描述
②rm -f 文件夹名/ –不推荐
在这里插入图片描述
③rm -rf 文件夹名/ –不推荐
在这里插入图片描述
③rm -i -rf 文件夹名/ ( -f是强制删除,会和 -i 冲突)不推荐
在这里插入图片描述
4.rm -r -i 文件路径/.文件后缀名 – 遍历删除某个文件夹下某个后缀名相同的所有文件
例如:
在这里插入图片描述
5.最危险的命令,执行以后系统直接没了,也就是俗称的删库跑路命令,不要轻易尝试
sudo rm -rf /
(/ --------- 根目录 , / * --------- 根目录下的所有东西)
注:
① sudo 管理员身份–输入完回车再输入密码直接进入管理员身份
问:为什么不直接使用su命令?
答:假如使用su命令以后 ,再sudo rm -rf /*回车执行时,实际上会提醒我们输入管理员身份密码,输入密码后才能删除
② 如果给运维的开发人员的权限过高,他进来的时候不是用户名@计算机名:~ $ (例如:aria@aria-virtual-machine:~$ ),可能就直接是root用户,这时候他就没必要输入sudo,直接 rm -rf /*回车,也没提示系统文件就全没了

十二.文件类型

图片常用格式:.png .jpg .psd(ps上的)…
视频常用格式:.mp4 .avi …
音频常用格式:.mp3 WAV(.wav)–无损的音频格式 FLAC(.flac)–无损的音频格式

十三.file命令–操作文件、文件夹

查看文件的前提:知道所查文件的格式
查看文件类型:file 文件路径
例如:
在这里插入图片描述
1.txt:empty 表明1.txt文件是个空文件
2.txt:ASCII text 意为采用ASCII编码,文件格式:text–纯文本格式(windows上是txt)
查看文件夹类型:file 文件夹路径/
例如:
在这里插入图片描述
directory 意为文件夹

十四. 终端查看文件内容

cat命令

cat 文件路径
例如:
在这里插入图片描述
在这里插入图片描述
缺点:只适用于内容较少的文件,如果内容特别长,需要用滚轮一点一点翻
cat -A 文件路径(所有东西都显示出来)
例如:
在这里插入图片描述
在这里插入图片描述
$意为回车键    ^I意为tab键
cat -n 文件路径(显示行号)
例如:
在这里插入图片描述
在这里插入图片描述
cat /etc/passwd 查看系统中的一些密码(密码文件–加密的,但实际上可以破解;或者直接使用root权限把后几行改了,但是很危险)
在这里插入图片描述

more命令

more 文件路径(显示文件内容,每次显示一屏)
②more显示内容前先清屏,然后在屏幕下方显示百分比
③more名单中内置了若干快捷键,常用的有H(获得帮助信息,B返回去),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退出命令),B(向上滚动一屏)。
例如:
在这里插入图片描述

less命令–最实用的,但实际不常用

less 文件路径(分屏上下翻页浏览文件内容)
②PgUp:向上翻动一页、PgDn:向下翻动一页、Q:退出
/内容+回车-----搜索内容
例如:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

tail命令

查看log日志可能会用tail命令
查看某个文件后10行的内容: tail 文件路径 --默认后10行
查看某个文件指定后几行的内容: tail -n 行数 文件路径
例如:
在这里插入图片描述

head命令

查看某个文件前10行的内容: head 文件路径 --默认后10行
查看某个文件指定前几行的内容: head -n 行数 文件路径
例如:
在这里插入图片描述

补充说明:

cat、more、less命令可以理解为windows上的右键以记事本打开,对音视频文件无效

十五.linux终端实现复制粘贴

①方法一:
复制:Ctrl+Shift+C
粘贴:Ctrl+Shift+V
方法二:
复制:左键双击命令,点击Copy
粘贴:右击,点击Paste
注:
windows终端和linux记事本(GUI界面):
复制:Ctrl+C
粘贴:Ctrl+V
macOS终端:
复制:command+C
粘贴:command+V
②Ctrl+C在linux终端中的作用为强制终止命令的执行
在这里插入图片描述

十六. linux中的一些快捷键

linux中没有撤销命令的概念(即命令执行后无法撤销,只可以在命令编写过程中使用快捷键修改当下命令):
①Tab键(制表符):自动补全  企业开发时常用,防止自己拼写出错
②Ctrl + U:删除光标之前的所有字符
③Ctrl + H:一个一个删除光标左侧的字符(相当于退格键)
④Ctrl+K:删除某个字符及其之后的全部字符
⑤Ctrl + W:删除光标左侧的一个单词(单词之间以空格分隔,若不使用空格分隔,则这个命令的效果等同于Ctrl + U )
⑥Ctrl+T:把光标前的字符一个一个往后挪动
⑦Ctrl + Y:粘贴 Ctrl + U、Ctrl + K 或 Ctrl + W 删除的内容
⑧Ctrl + C:取消当前正在执行的命令
⑨Ctrl+F:一个一个往后移动字符(相当于方向右键)
⑩Ctrl+B:一个一个向前移动字符(相当于方向左键)
⑪Ctrl+P:记录之前输入过的命令(相当于方向上键)
⑫Ctrl+N:记录之前输入过的命令(相当于方向下键)
⑬Ctrl+R:搜索之前输入过的命令(需要手动输入命令关键字
⑭Ctrl+方向键(左右):可以跳跃linux命令单词(单词间以下划线间隔----c语言下划线命名法的来源) 空格、分号、小括号等符号都可以间隔单词,尽管有的并不符合语法规范
⑮Ctrl+A:直接跳到整个命令的开头
⑯Ctrl+E:直接跳到整个命令的结尾
⑰Ctrl+J:相当于回车键
注:
        这些快捷键在不同的终端模拟器和shell(如bash、zsh等)中可能会有所不同。如果你发现上述快捷键不起作用,可以查看你使用的终端模拟器和shell的文档来获取正确的快捷键。

十七. FHS

文件系统层级标准(linux中常见,几乎所有linux发行版都用到这个标准,例如:cenOS、kali等)
文件系统:读、写的标准
官网(最全的):更新标准

十八. 命令解析查询手段

方法一:bash 手册: (例如,在终端输入man ls命令,可以查看ls 命令解析) 单击q(quite的缩写)可以退出
在这里插入图片描述
方法二:在这个网址中查询
方法三:在这个github项目中查询
其他:
dash: mac上一个收费的文档查询工具,涵盖世界上几乎所有的语言

十九.小结

上述内容都是最基础的bash shell,每一个都必须会。这些GNU的基础命令非常重要,尤其是文件夹之间的关系。

二十. 推荐

frank的linux课教程 以上笔记全部来源于此

-----------------------------------未完待续...------------------------
---------------------------出现问题欢迎批评指正啊 ---------------------
  • 19
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值