为初学者准备的 ln 命令教程(5 个示例)
创始人
2024-03-01 22:26:50
0

当我们在命令行上工作时,您可能需要在文件之间创建链接。这时,您可以可以借助一个专用命令,ln。本教程中,我们将通过一些简单易理解的例子来讨论此工具的基础知识。在此之前,值得一提的是,本教程所有例子都已在 Ubuntu 16.04 上测试通过。

Linux ln 命令

正如你现在所了解的,ln 命令能够让您在文件之间创建链接。下面就是 ln 工具的语法(或者使用其他一些可行的语法)。

ln [OPTION]... [-T] TARGET LINK_NAME (第一种形式)
ln [OPTION]... TARGET (第二种形式)
ln [OPTION]... TARGET... DIRECTORY (第三种形式)
ln [OPTION]... -t DIRECTORY TARGET... (第四种形式)

下面是 ln 工具 man 文档描述的内容:

在第一种形式下,为目标位置(TARGET)创建一个叫 LINK_NAME 的链接。在第二种形式下,为目标位置(TARGET)在当前目录下创建一个链接(LCTT 译注:创建的为同名链接)。在第三和第四种形式中,在 DIRECTORY 目录下为每一个目标位置(TARGET)创建链接。默认创建硬链接,符号链接需要 --symbolic 选项。默认创建的每一个创建的链接(新链接的名字)都不能已经存在。当创建硬链接时,目标位置(TARGET)文件必须存在;符号链接可以保存任意文本,如果之后解析,相对链接的解析与其父目录有关。

通过下面问答风格的例子,可能会给你更好的理解。但是在此之前,建议您先了解 硬链接和软链接的区别.

Q1. 如何使用 ln 命令创建硬链接?

这很简单,你只需要像下面使用 ln 命令:

ln [file] [hard-link-to-file]

例如:

ln test.txt test_hard_link.txt

如此,您便可以看见一个已经创建好的,名为 test_hard_link.txt 的硬链接。

Q2. 如何使用 ln 命令创建软/符号链接?

使用 -s 命令行选项:

ln -s [file] [soft-link-to-file]

例如:

ln -s test.txt test_soft_link.txt

test_soft_link.txt 文件就是一个软/符号链接,以天蓝色文本 标识

Q3. 如何使用 ln 命令删除既存的同名目标文件?

默认情况下,ln 不允许您在目标目录下创建已存在的链接。

然而,如果一定要这么做,您可以使用 -f 命令行选项覆盖此行为。

提示:如果您想在此删除过程中有所交互,您可以使用 -i 选项。

Q4. 如何使用 ln 命令创建现有文件的同名备份?

如果您不想 ln 删除同名的现有文件,您可以为这些文件创建备份。使用 -b 即可实现此效果,以这种方式创建的备份文件,会在其文件名结尾处包含一个波浪号(~)。

Q5. 如何在当前目录以外的其它目录创建链接?

使用 -t 选项指定一个文件目录(除了当前目录)。比如:

ls test* | xargs ln -s -t /home/himanshu/Desktop/

上述命令会为(当前目录下的)所有 test* 文件创建链接,并放到桌面目录下。

总结

当然,尤其对于新手来说,ln 并不是日常必备命令。但是,这是一个有用的命令,因为你永远不知道它什么时候能够节省你一天的时间。对于这个命令,我们已经讨论了一些实用的选项,如果你已经完成了这些,可以查询 man 文档 来了解更多详情。


via: https://www.howtoforge.com/linux-ln-command/

作者:Himanshu Arora 译者:CYLeft 校对:Locez

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

被AI推荐来的客户问我:为...
01 前不久,我在北京讲课,遇到一位新学员,他专门来问我:“老师你...
2025-06-17 09:43:51
Vulnhub项目:Web...
靶机地址:Web Machine(N7)渗透过程&#...
2025-05-31 21:36:27
解决win10任何程序打开...
文章目录一、问题与修改原因1、着手修改吧2、弯路上探索3、发现祸根...
2025-05-31 06:59:12
进阶C语言 第七章----...
绪论         书接上回,在上章我们学习完了文...
2025-05-30 14:44:00
SLAM | 激光SLAM...
=================================...
2025-05-29 06:40:46
Vulnhub靶场----...
文章目录一、环境搭建二、渗透流程 一、环境搭建 DC-7下载地...
2025-05-28 23:21:23

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
2024 开年,LLUG 和你... Hi,Linuxer,2024 新年伊始,不知道你是否已经准备好迎接新的一年~ 2024 年,Lin...
什么是 KDE Connect... 什么是 KDE Connect?它的主要特性是什么?它应该如何安装?本文提供了基本的使用指南。科技日...
Opera 浏览器内置的 VP... 昨天我们报道过 Opera 浏览器内置了 VPN 服务,用户打开它可以防止他们的在线活动被窥视。不过...