软连接与硬连接
对于一个文件来说,有唯一的索引接点与之对应,而对于一个索引接点号,却可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问该文件。注意在Linux下是一切皆文件的啊,文件夹、新加的硬盘 ...都看成文件来处理。
连接有软连接和硬连接(hard link)之分的,软连接(symbolic link)又叫符号连接,软链接(类似于windows系统中的快捷方式),硬链接(相当于对源文件copy,程序或命令对该文件block的另一个访问路口)。符号连接相当于Windows下的快捷方式。
不可以对文件夹建立硬连接的,通常用的还是软连接比较多。
软连接和硬连接主要区别:
软链接:
- 1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
- 2.软链接可以 跨文件系统 ,硬链接不可以
- 3.软链接可以对一个不存在的文件名进行链接
- 4.软链接可以对目录进行链接
- 不可以删除源文件,删除源文件导致链接文件找不到,出现文件红色闪烁
硬链接:
- 1.硬链接,以文件副本的形式存在。但不占用实际空间。
- 2.不允许给目录创建硬链接
- 3.硬链接只有在同一个文件系统中才能创建
- 可以删除源文件,链接文件可以正常打开
ln命令(类似于Windows系统的快捷方式)
为某一个文件在另外一个位置建立一个同步的链接。当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
注意:命令默认使用硬链接。语法:
ln [选项] [源文件或目录] [目标文件或目录]
命令选项
- -b 删除,覆盖以前建立的链接
- -d 允许超级用户制作目录的硬链接
- -f 强制执行
- -i 交互模式,文件存在则提示用户是否覆盖
- -n 把符号链接视为一般目录
- -s 软链接(符号链接)
- -v 显示详细的处理过程
例如:
1、给视频文件夹创建vedio软连接:
2、给OK.txt文件创建ok软连接:
3、对HelloWorld2.c文件创建h2硬连接:
history命令
用于显示历史记录和执行过的指令命令。语法:
history [选项]
命令选项
- -n: 显示历史记录中最近的n个记录;
- -c:清空当前历史命令;
- -a:将历史命令缓冲区中命令写入历史命令文件中;
- -r:将历史命令文件中的命令读入当前历史命令缓冲区;
- -w:将当前历史命令缓冲区命令写入历史命令文件中;
注意:
1、Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中。默认保存1000条,可以更改这个值。如果键入 history, history会向显示所使用的前1000个历史命令,并且给它们编了号,会看到一个用数字编号的列表快速从屏幕上卷过。可能不需要查看1000个命令中的所有项目, 也可以加入数字来列出最近的 n 笔命令列表。linux中history命令不仅仅可以查询历史命令而已. 还可利用相关的功能来帮我们执行命令。运行特定的历史命令history会列出bash保存的所有历史命令,并且给它们编了号,可以使用“叹号接编号”的方式运行特定的历史命令。
2、如想查询某个用户在系统上执行了什么命令,可以使用root用户身份登录系统,检查Home目录下的用户主目录下的“.bash_history”文件,该文件记录了用户所使用的命令和历史信息。
例如:
1、查看所有历史记录
history
2、查看所有历史记录,以分页方式显示
history | more
3、清空历史记录
history -c