admin管理员组文章数量:1586729
Linux常用命令指南 - ln 命令 创建链接
文章目录
- Linux常用命令指南 - ln 命令 创建链接
- 前言
- 一、ln 是什么?
- 二、ln help 中文手册
- 三、ln 使用场景
- 总结
前言
在linux中,使用ln
创建软链接或者硬链接的场景很多。
在分析 snap
命令使用过程中,发现了 snap 应用安装的数据大多会在 /snap/ 目录中,新增一个只读目录,但发现 core22
目录只有一个864目录,没有创建活动链接 current 指向它导致其他应用启动报错。
本文就对 ln
命令使用场景做一个介绍。
一、ln 是什么?
ln 命令用于将一个文件创建链接。链接分为软链接和硬链接,命令默认使用硬链接。
**软链接:**类似于windows系统中的快捷方式,对链接进行操作,不会修改源文件。不可以删除源文件,删除源文件导致链接文件找不到。
**硬链接:**相当于把源文件又复制了一份,而且修改链接文件,也会改变源文件,可以删除源文件,链接文件可以正常打开。目录不予许创建硬链接。
二、ln help 中文手册
以下是 ln --help 中文手册:
$ ln --help
用法:ln [选项]... [-T] 目标 链接名
或:ln [选项]... 目标
或:ln [选项]... 目标... 目录
或:ln [选项]... -t 目录 目标...
第一种格式,创建一个名为 <链接名> 的、指向 <目标> 的链接。
第二种格式,在当前目录创建指向 <目标> 的链接。
第三和第四种格式,在 <目录> 中创建指向各个 <目标> 的链接。
默认创建硬链接,当使用 --symbolic 时创建符号链接。
默认情况下,目标(指新链接的名称)不能已经存在。
创建硬链接时,每个 <目标> 都必须存在。符号链接可以包含任意的文本;
以后进行解析时,符号链接会被解析为一个相对于其父目录的相对链接。
长选项的必选参数对于短选项也是必选的。
--backup[=控制] 为每个已存在的目标文件创建备份文件
-b 类似 --backup,但不接受参数
-d, -F, --directory 允许超级用户尝试创建指向目录的硬链接
(注意:即使是超级用户,此操作也可能因系统
限制而失败)
-f, --force 删除已存在的目标文件
-i, --interactive 删除目标文件前进行确认
-L, --logical 如果 <目标> 为符号链接,将其解引用
-n, --no-dereference 如果 <链接名> 是一个指向目录的
符号链接,则将其视为普通文件处理
-P, --physical 创建直接指向符号链接的硬链接
-r, --relative 和 -s 同时使用时,创建相对于链接位置的链接
-s, --symbolic 创建符号链接,而不是硬链接
-S, --suffix=后缀 替换通常使用的备份文件后缀
-t, --target-directory=目录 在指定的 <目录> 中创建链接
-T, --no-target-directory 总是 <链接名> 视为普通文件
-v, --verbose 打印每个已创建链接的文件名称
--help 显示此帮助信息并退出
--version 显示版本信息并退出
备份文件的后缀为 "~",除非使用了 --suffix 选项或 SIMPLE_BACKUP_SUFFIX 环境变量
指定了其他后缀。版本控制的方式可通过 --backup 选项或 VERSION_CONTROL 环境变量
来选择。以下是可用的设置值:
none, off 不进行备份(即使使用了--backup 选项)
numbered, t 使用带有数字编号的备份文件进行备份
existing, nil 若带数字的备份文件已经存在则使用 numbered,否则使用 simple
simple, never 总是使用简单方式进行备份
如果指定了 -s 选项,会忽略 -L 和 -P。否则,当某个 <目标> 为符号链接时,
会由最后一个指定的选项来控制程序的行为(默认为 -P)。
GNU coreutils 在线帮助:<https://www.gnu/software/coreutils/>
请向 <http://translationproject/team/zh_CN.html> 报告任何翻译错误
完整文档 <https://www.gnu/software/coreutils/ln>
或者在本地使用:info '(coreutils) ln invocation'
三、ln 使用场景
以下是ln 常用使用场景。
$ ln -s ~/code/ mycode # 基于~/code/开发目录建立软链接 mycode
$ mv mycode mycode-new # 软链接重命名
$ ln -sf mycode-new ~/code/demo-ostree # 修改软链接指向到新目录~/code/demo-ostree
总结
本文仅仅介绍了ln的使用方法和常用使用场景。
版权声明:本文标题:Linux常用命令指南 - ln 命令 创建链接 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1727987928a1141272.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论