简介

  • ln命令

linux ln命令 详解

ln 命令用于在文件系统中创建链接。链接可以分为硬链接(hard link)和符号链接(symbolic link,也称为软链接)。硬链接是文件系统中同一索引节点(inode)上的多个文件名,它们共享相同的数据块。符号链接是一个指向另一个文件或目录的特殊文件,类似于 Windows 中的快捷方式。以下是关于 ln 命令的详细解释:

语法:

1
ln [选项] 源文件 目标文件

常用选项:

  • -s, –symbolic: 创建符号链接。

  • -b, –backup: 在覆盖目标文件之前创建备份。

  • -i, –interactive: 在覆盖目标文件之前进行交互式确认。

  • -v, –verbose: 显示详细的输出。

示例:

  1. 创建硬链接:
    1
    
    ln source_file hard_link
    

    这会在文件系统上创建一个硬链接。

  2. 创建符号链接:
    1
    
    ln -s source_file symbolic_link
    

    使用 -s 选项,创建一个符号链接。

  3. 创建符号链接到目录:
    1
    
    ln -s /path/to/directory symbolic_link_to_directory
    

    创建符号链接指向目录。

  4. 创建备份并覆盖目标文件:
    1
    
    ln -b source_file target_file
    

    使用 -b 选项,创建备份并覆盖目标文件。

  5. 交互式创建链接:
    1
    
    ln -i source_file target_file
    

    使用 -i 选项,进行交互式确认。

  6. 递归创建符号链接:
    1
    
    ln -sT /path/to/source_directory /path/to/symbolic_link_directory
    

    使用 -sT 选项,递归创建符号链接。

示例解释:

  • 硬链接和符号链接: ln 命令可以创建硬链接或符号链接。硬链接是文件系统中同一索引节点上的多个文件名,它们共享相同的数据块。符号链接是一个特殊类型的文件,指向另一个文件或目录。

  • 创建符号链接到目录: 通过 -s 选项,可以创建符号链接指向目录。

  • 创建备份并覆盖目标文件: 使用 -b 选项,ln 在覆盖目标文件之前会创建一个备份。

  • 交互式创建链接: 使用 -i 选项,ln 在覆盖目标文件之前会进行交互式确认,避免误操作。

  • 递归创建符号链接: 使用 -sT 选项,可以递归创建符号链接,通常在创建指向目录的链接时使用。

linux ln命令 常用技巧

ln 命令是在 Linux 中创建链接的强大工具,下面是一些 ln 命令的常用技巧:

  1. 创建硬链接:
    1
    
    ln source_file hard_link
    

    这会在文件系统上创建一个硬链接,硬链接与源文件共享相同的 inode 和数据块。

  2. 创建符号链接:
    1
    
    ln -s source_file symbolic_link
    

    使用 -s 选项创建符号链接,这是指向源文件的特殊文件。

  3. 创建符号链接到目录:
    1
    
    ln -s /path/to/directory symbolic_link_to_directory
    

    使用 -s 选项,创建符号链接指向目录。

  4. 创建链接时避免覆盖目标文件:
    1
    
    ln -b source_file target_file
    

    使用 -b 选项,在覆盖目标文件之前会创建备份。

  5. 递归创建符号链接:
    1
    
    ln -sT /path/to/source_directory /path/to/symbolic_link_directory
    

    使用 -sT 选项,递归创建符号链接,通常在创建指向目录的链接时使用。

  6. 创建链接时进行交互式确认:
    1
    
    ln -i source_file target_file
    

    使用 -i 选项,创建链接时进行交互式确认,以避免误操作。

  7. 使用相对路径创建符号链接:
    1
    
    ln -sT ../source_file /path/to/symbolic_link
    

    使用 -sT 选项和相对路径,可以创建指向父目录中文件的符号链接。

  8. 创建硬链接的数量统计:
    1
    
    find . -type f -links +1 -exec ls -l {} \;
    

    使用 find 命令和 -links 选项,可以列出硬链接数量大于1的文件。

  9. 创建硬链接并保留原始文件的权限和时间戳:
    1
    
    cp -p source_file hard_link
    

    使用 cp 命令的 -p 选项,创建硬链接并保留原始文件的权限和时间戳。

这些技巧能够帮助你更灵活地使用 ln 命令,创建不同类型的链接,并在需要时进行一些额外的操作。

ln

  • 简介:
    • 它的功能是为某一个文件在另外一个位置建立一个同步的链接
    • 当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
  • 语法:
    • ln [参数][源文件或目录][目标文件或目录]
  • 参数的格式为:
    • [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]
    • [--help] [--version] [--]
  • 详解:
    • Linux文件系统中,有所谓的链接(link),我们可以将其视为档案的别名,而链接又可分为两种 : 硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。
    • 不论是硬链接或软链接都不会将原本的档案复制一份,只会占用非常少量的磁碟空间
    • 软链接:
      • 软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
      • 软链接可以 跨文件系统 ,硬链接不可以
      • 软链接可以对一个不存在的文件名进行链接
      • 软链接可以对目录进行链接
    • 硬链接
      • 硬链接,以文件副本的形式存在。但不占用实际空间。
      • 不允许给目录创建硬链接
      • 硬链接只有在同一个文件系统中才能创建
  • 参数
    • 必要参数
      • --backup[=CONTROL] 备份已存在的目标文件
      • -b 类似 –backup ,但不接受参数
      • -d 允许超级用户制作目录的硬链接
      • -f 强制执行
      • -i 交互模式,文件存在则提示用户是否覆盖
      • -n 把符号链接视为一般目录
      • -s 软链接(符号链接)
      • -v 显示详细的处理过程
    • 选择参数
      • -S "-S<字尾备份字符串> ""--suffix=<字尾备份字符串>"
      • -V "-V<备份方式>""--version-control=<备份方式>"
      • --help 显示帮助信息
      • --version 显示版本信息