Linux ln、history命令

版权声明:最终解释权归属Hern、HernSong(hernsong)、苍鹭、www.hernsong.com所有! https://blog.csdn.net/qq_36761831/article/details/89850013

软连接与硬连接

对于一个文件来说,有唯一的索引接点与之对应,而对于一个索引接点号,却可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问该文件。注意在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

猜你喜欢

转载自blog.csdn.net/qq_36761831/article/details/89850013