每天一个Linux命令ln

2023年 8月 16日 28.1k 0

一、命令概述

ln是Linux下用于创建文档链接的命令,它是英语词组link files的缩写。

1.inode

inode是index node的缩写,通常而言,操作系统对于文件数据的存放分为2个部分,一部分是文件内容,存放在block中,另一部分是文件的元数据信息(文件属性、权限、以及block编号等),存放在inode中。我们读取文件时,都是通过文件名对应的inode ID,找到对应的inode,从中读到block的ID,从而获取到文件内容。inode是文件系统中的一种数据结构,而不同的分区和文件系统中的inode可能拥有不同的结构,所以inode不能跨文件系统。

使用ls -i可以查看文档的inode编号

1-1-1.png

2.硬链接

指向inode的文件名就是硬链接,一般情况下inode和文件名是一一对应的,也就是文件刚创建的时候,硬链接数为1,但是Linux中允许多个文件名指向同一个inode,inode的硬链接数会随着指向它的文件名的增加而增加,当硬链接数大于1的时候,删除源文件仅仅删除的是硬链接,对其他硬链接没有影响,因为文件本身并没有被删除,只有硬链接数为0时,文件才会真正被删除。硬链接无法分区和跨文件系统,而且无法为目录创建硬链接。

3.软连接

也叫符号链接,类似于windows中的快捷方式,它是Linux中的一种特殊的文件类型,它创建了一个指向文件名的链接文件,读取符号链接文件时,系统会将其自动导向源文件的路径,删除源文件会使软链接失效,再次创建同名源文件,软链接又可以继续生效,所以可以为不存在的文件创建软链接。而且因为软连接是指向文件名的,所以可以为目录创建软连接,同时软连接也可以跨分区和文件系统。

二、命令语法

ln [操作选项] [源文件] [链接名称]

| 操作选项 | 说明 |
| -f | force,强制执行,如果存在同名链接,先删除,再创建 |
| -i | interactive,如果存在同名链接,询问用户是否覆盖 |
| -s | symbolic,创建符号链接 |
| -v | verbose,显示详细信息 |

三、常用操作

1.创建硬链接

ln awk.sh awk

3-1-1.png

2.创建软链接

ln -s awk.sh sytest

3-1-2.png

3.强制执行

ln -fs awk.sh sytest

3-1-3.png

4.覆盖前询问用户

ln -is awk.sh sytest

3-1-4.png

5.显示详细信息

ln -vfs awk.sh sytest

3-1-5.png

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论