当前位置: 首页 > news >正文

linux文件管理命令ln

linux文件管理命令ln

    • 1、软链接
    • 2、硬链接
    • 3、命令参数
      • 3.1、必要参数
      • 3.2、选择参数
    • 4、应用示例
      • 4.1、创建硬链接
      • 4.2、创建软链接(符号链接)
      • 4.3、 对目录创建软链接
      • 4.4、强制覆盖目标文件
    • 5、应用场景

它的功能是为某一个文件在另外一个位置建立一个同步的链接。

当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。

 ln [参数][源文件或目录][目标文件或目录]

参数格式:

[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]

Linux文件系统中,有所谓的链接,我们可以将其视为档案的别名,而链接又可分为两种 : 硬链接与软链接(符号链接)。
硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。

不论是硬链接或软链接都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。

1、软链接

  1. 软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式,它指向的是源文件或目录的路径,而不是 inode
  2. 软链接可以 跨文件系统 ,硬链接不可以
  3. 软链接可以对一个不存在的文件名进行链接
  4. 软链接可以对目录进行链接
  5. 删除源文件或目录后,软链接将失效。

2、硬链接

  1. 硬链接,以文件副本的形式存在。但不占用实际空间。
  2. 不允许给目录创建硬链接
  3. 硬链接只有在同一个文件系统中才能创建
  4. 多个硬链接可以指向同一个 inode,因此它们实际上是同一个文件的不同访问入口,删除其中一个硬链接不会影响其他硬链接和文件本身的数据

3、命令参数

3.1、必要参数

  • -s:创建符号链接(软链接),如果不使用该选项,默认创建硬链接。
  • -f:强制创建链接,若目标文件已存在则覆盖。
  • -i:交互模式,覆盖前提示确认。
  • -v:显示详细操作信息。
  • –backup[=CONTROL] 备份已存在的目标文件
  • -b 类似 --backup ,但不接受参数
  • -d 允许超级用户制作目录的硬链接
  • -n 把符号链接视为一般目录

3.2、选择参数

  • -S "-S<字尾备份字符串> "或 “–suffix=<字尾备份字符串>”
  • -V “-V<备份方式>“或”–version-control=<备份方式>”
  • –help 显示帮助信息
  • –version 显示版本信息

4、应用示例

4.1、创建硬链接

#!/bin/bash

#创建一个测试文件
touch test.txt

#创建硬链接
ln test.txt test_hardlink.txt

#查看文件信息
ls -li test.txt test_hardlink.txt

在这里插入图片描述
在上述示例中,test_hardlink.txt 是 test.txt 的硬链接。通过 ls -li 命令可以看到它们的 inode 号码相同,并且链接数变为 2。

4.2、创建软链接(符号链接)

#!/bin/bash

# 创建软链接
ln -s test.txt test_symlink.txt

#查看文件信息
ls -li test.txt test_symlink.txt

在这里插入图片描述
在上述示例中,test_dir_symlink 是 test_dir 的软链接。通过 ls -ld 命令可以看到软链接的类型为 l,表示这是一个符号链接。

4.3、 对目录创建软链接

#!/bin/bash

# 创建一个测试目录
mkdir test_dir
# 创建目录的软链接
ln -s test_dir test_dir_symlink
# 查看目录信息
ls -ld test_dir test_dir_symlink

在这里插入图片描述
在上述示例中,test_dir_symlink 是 test_dir 的软链接。通过 ls -ld 命令可以看到软链接的类型为 l,表示这是一个符号链接。

4.4、强制覆盖目标文件

#!/bin/bash

# 创建一个目标文件
touch target.txt
# 强制覆盖目标文件创建软链接
ln -sf test.txt target.txt

ls -li test.txt target.txt

在这里插入图片描述
在上述示例中,使用 -f 选项强制覆盖已存在的 target.txt 文件,创建一个指向 test.txt 的软链接。

5、应用场景

  • 节省磁盘空间:硬链接可以让多个文件名指向同一个 inode,从而节省磁盘空间。例如,在备份文件时,可以使用硬链接来避免重复存储相同的数据。
  • 方便文件管理:软链接可以方便地创建文件或目录的快捷方式,例如在不同的目录中创建指向同一文件的软链接,方便用户访问。
  • 软件升级:在软件升级时,可以使用软链接来指向不同版本的软件,从而实现平滑过渡。例如,将 /usr/bin/python 软链接到 /usr/bin/python3 或 /usr/bin/python2,方便用户切换不同版本的 Python 解释器。

相关文章:

  • 算法菜鸡备战3月2日传智杯省赛----0221
  • 大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(3)
  • 《代码随想录第三十九天》——背包问题二维、背包问题一维、分割等和子集
  • 【进程与线程】Linux 线程、同步以及互斥
  • 学习整理安装php的uuid扩展以及uuid调用方法
  • vue2.x中父组件通过props向子组件传递数据详细解读
  • logstash中的input插件(http插件,graphite插件)
  • python杂学
  • 视觉应用工程师(面试)
  • OpenBMC:BmcWeb实例化App
  • 非常简洁的一个 Excel 导出封装,生成多个 Excel 文件并打包成 zip 通过浏览器下载
  • python小项目编程-中级(1、图像处理)
  • 【蓝桥杯集训·每日一题2025】 AcWing 6118. 蛋糕游戏 python
  • 欧洲跨境组网专线:企业出海的高效网络解决方案
  • Python(二十二)实现各大跨境船公司物流查询CMA船司物流查询
  • DeepSeek技术演进史:从MoE到当前架构
  • npm/pnpm软链接
  • Spring中Aware的用法以及实现
  • hive—常用的函数整理
  • AI学习指南DeepSeek篇(6)-DeepSeek论文介绍
  • 至高建设集团 网站/网站seo快速优化
  • 门户网站界面设计模板/重庆公司seo
  • 可以做试题的网站/培训机构网站制作
  • 如何做流量网站/互站网
  • 学php到做网站要多久/网站推广计划书
  • 网站内容被攻击该怎么做/win10优化