Linux中使用ln命令在文件之间建立连接的用法讲解
在Unix世界里有两个'link'(连接)概念,一般称之为硬连接和软连接。一个硬连 接仅仅是一个文件名。(一个文件可以有好几个文件名,只有将最后一个文件名从 磁盘上删除,才能把这个文件删掉。文件名的个数是由ls(1)来确定的。所有的文件 名都处于同一个状态,也就没有什么lq源名字rq 之说。通常文件系统里的一个 文件的所有名字包含着一样的数据信息,不过这样也不是必需的。)一个软连接 (或符号连接)是完全不同的:它是一个包含了路径信息的小小的指定文件。因此, 软连接可以指向不同文件系统里的文件(比如由NFS装载的不同机器文件系统上的文 件),甚至可以指向一个不一定确实存在的文件。在软连接文件被访问(系统调用 open(2) 或stat(2))的时候,操作系统用该文件所包含的路径替换该文件的访问介 入点,从而实现对所指文件的访问。(用命令rm(1)和unlink(2)可以删除连接,但 不是删除该文件所指向的文件。系统指定调用lstat(2)和readlink(2) 来读取连接 文件与其所指文件的状态。到底是对软连接文件操作,还是对被指向文件操作,由 于不同操作系统件存在不同的系统调用,而存在着差异。)
ln 在文件间产生连接。缺省时,产生硬连接,有-s选项,则产生符号(软)连接。
如果仅仅只给出一个文件名,那么ln将在当前目录里产生这个文件的连接, 也就是说,以该文件(的最后一个)名称等同的名字在当前目录里产生一个连接 (GNU范围内); 如果最后一个参数是一个已存在的目录名, ln 将在那个目录里给每一个源文件用以与源文件相同的文件名产生连接, (不同情况见以下--no-dereference的描述); 如果只给出两个文件名,ln将产生源文件的连接; 如果最后一个参数不是一个目录名或多于两个文件名,则报错。
缺省时,ln不删除已存在的文件或符号连接。 (因此,它可以被用来锁定目标文件,即当dest已经不存在时) 但选项-f可以强制执行。
在已存在的实现中,只有超级用户才能建立目录的硬连接。 POSIX 禁止系统调用link(2)和ln建立目录的硬连接 (但是允许在不同的文件系统间建立硬连接)。
使用方式 : ln [options] source dist,其中 option 的格式为 :
[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}][--help] [--version] [--]
说明 : Linux/Unix 档案系统中,有所谓的连结(link),我们可以将其视为档案的别名,而连结又可分为两种 : 硬连结(hard link)与软连结(symbolic link),硬连结的意思是一个档案可以有多个名称,而软连结的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬连结是存在同一个档案系统中,而软连结却可以跨越不同的档案系统。
ln source dist 是产生一个连结(dist)到 source,至于使用硬连结或软链结则由参数决定。
不论是硬连结或软链结都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。
-f : 链结时先将与 dist 同档名的档案删除
-d : 允许系统管理者硬链结自己的目录
-i : 在删除与 dist 同档名的档案时先进行询问
-n : 在进行软连结时,将 dist 视为一般的档案
-s : 进行软链结(symbolic link)
-v : 在连结之前显示其档名
-b : 将在链结时会被覆写或删除的档案进行备份
-S SUFFIX : 将备份的档案都加上 SUFFIX 的字尾
-V METHOD : 指定备份的方式
--help : 显示辅助说明
--version : 显示版本
注意:
如果不使用 -s 标志,就不能在文件系统之间链接文件。
如果 TargetDirectory 已经是链接到目录上的一个符号链接,那么 ln 命令将现有的目标视为文件。这意味着,类似于 ln -fs somepath/lname symdir 的命令不会遵循现有的 symdir 符号链接,作为代替,它会创建一个从 somepath/lname 到 symdir 的新的符号链接。
退出状态
此命令返回以下的退出值:
0 所有指定的文件都成功链接上了。
>0 出现一次错误。
例:
复制代码代码如下:
[root@localhost test_ln]# ln -s /home/zhangy/heartbeat ./ #在当前目录下,建立heartbeat的软连接
[root@localhost test_ln]# ln -s /home/zhangy/test ./#建立目录的软件接
[root@localhost test_ln]# ln /home/zhangy/tee.txt ./#建立硬连接
[root@localhost test_ln]# ll
总计 4
lrwxrwxrwx 1 root root 22 05-11 11:04 heartbeat - /home/zhangy/heartbeat #文件软件接
-rw-r--r-- 2 root root0 2010-11-24 tee.txt#文件硬连接
lrwxrwxrwx 1 root root 17 05-11 11:04 test - /home/zhangy/test #目录软件接
>>
1.为了创建到一个文件的另一个链接(别名),请输入:
复制代码代码如下:
ln -f chap1 intro
这会将 chap1 链接到新的名称, intro。如果 intro 不存在,那么会创建该文件名。如果 intro 已经存在了,那么这个文件会被替换为指向 chap1的一个链接。然后 chap1 和 intro 文件名会指向同一个文件。对其中任何一个的更改都会出现在另一个中。如果一个文件名被 rm 命令删除,那么该文件并没有完全被删除,因为它仍然以其它的名字存在。
2.为了将文件链接为另一个目录中的相同名字,请输入:
复制代码代码如下:
lnindex manual
这会将 index 链接到新的名称,manual/index。
注意:在示例 1 中的 intro 是一个文件的名称;在示例 2 中的 manual 是一个已经存在的目录。
3.为了将几个文件链接为另一个目录中的名称,请输入:
复制代码代码如下:
ln chap2 jim/chap3 /home/manual
这会将 chap2 链接到新的名称 /home/manual/chap2;将 jim/chap3 链接到新的名称 /home/manual/chap3。
4.如果想要在 ln 命令中使用模式匹配字符,请输入:
复制代码代码如下:
lnmanual/* .
这会将 manual 目录中的所有文件链接到当前目录中, . (点),给他们在 manual 目录中同样的名称。
注意: 必须在星号和句点之间输入一个空格。
5.为了创建一个符号链接,输入:
复制代码代码如下:
ln -s /tmp/toc toc
这会在当前的目录中创建符号链接 toc。 toc 文件指向 /tmp/toc 文件。如果 /tmp/toc 文件已经存在了,那么 cat toc 命令可以列出其内容。
6.如果想要在不指明 TargetFile 参数的情况下得到相同的结果,请输入:
复制代码代码如下:
ln -s /tmp/toc
推荐系统
番茄花园 Windows 10 极速企业版 版本1903 2022年7月(32位) ISO镜像快速下载
语言:中文版系统大小:3.98GB系统类型:Win10新萝卜家园电脑城专用系统 Windows10 x86 企业版 版本1507 2022年7月(32位) ISO镜像高速下载
语言:中文版系统大小:3.98GB系统类型:Win10笔记本&台式机专用系统 Windows10 企业版 版本1903 2022年7月(32位) ISO镜像快速下载
语言:中文版系统大小:3.98GB系统类型:Win10笔记本&台式机专用系统 Windows10 企业版 版本1903 2022年7月(64位) 提供下载
语言:中文版系统大小:3.98GB系统类型:Win10雨林木风 Windows10 x64 企业装机版 版本1903 2022年7月(64位) ISO镜像高速下载
语言:中文版系统大小:3.98GB系统类型:Win10深度技术 Windows 10 x64 企业版 电脑城装机版 版本1903 2022年7月(64位) 高速下载
语言:中文版系统大小:3.98GB系统类型:Win10电脑公司 装机专用系统Windows10 x64 企业版2022年7月(64位) ISO镜像高速下载
语言:中文版系统大小:3.98GB系统类型:Win10新雨林木风 Windows10 x86 企业装机版2022年7月(32位) ISO镜像高速下载
语言:中文版系统大小:3.15GB系统类型:Win10
相关文章
- 文本模式命令提示符版安装CentOS 6.5的图文方法
- win7优化错误报告弹出提示窗口无需禁用即可摆脱折磨
- Win10 RS5快速预览版17733今日推送
- UBuntu系统安装KVM创建虚拟机遭遇故障的解决方法
- Mac系统怎么共享windows打印机/本地打印机/网络打印机?
- Win7屏幕刷新率怎么设置 Win7屏幕刷新频率设置教程
- Excel如何按颜色求和?不同区域Excel单元格求和技巧
- Win10创意者更新秋季版16299.665更新推送补丁型号KB4457142(附补丁下载)
- Win7系统显示日历到电脑桌面的方法
- win10退回win8系统后出现蓝屏提示system_service_exception(win32ksys)的解决方法
- Win7系统关闭80端口占用程序进程的方法
- Win7安装中文软件显示乱码是什么原因(系统语言是中文)
- windows7声卡驱动不能安装的自动、手动修复方法
- 使用U盘安装Debian系统图文教程
热门系统
- 1华硕笔记本&台式机专用系统 GhostWin7 32位正式旗舰版2018年8月(32位)ISO镜像下载
- 2雨林木风 Ghost Win7 SP1 装机版 2020年4月(32位) 提供下载
- 3深度技术 Windows 10 x86 企业版 电脑城装机版2018年10月(32位) ISO镜像免费下载
- 4电脑公司 装机专用系统Windows10 x86喜迎国庆 企业版2020年10月(32位) ISO镜像快速下载
- 5深度技术 Windows 10 x86 企业版 六一节 电脑城装机版 版本1903 2022年6月(32位) ISO镜像免费下载
- 6深度技术 Windows 10 x64 企业版 电脑城装机版2021年1月(64位) 高速下载
- 7新萝卜家园电脑城专用系统 Windows10 x64 企业版2019年10月(64位) ISO镜像免费下载
- 8新萝卜家园 GhostWin7 SP1 最新电脑城极速装机版2018年8月(32位)ISO镜像下载
- 9电脑公司Ghost Win8.1 x32 精选纯净版2022年5月(免激活) ISO镜像高速下载
- 10新萝卜家园Ghost Win8.1 X32 最新纯净版2018年05(自动激活) ISO镜像免费下载
热门文章
常用系统
- 1雨林木风 Ghost Win7 SP1 六一节 装机版 2020年6月(32位) 提供下载
- 2深度技术 Windows 10 x86 企业版 电脑城装机版2020年3月(32位) ISO镜像免费下载
- 3笔记本&台式机专用系统 GhostWin7 32位旗舰版2020年4月(32位) ISO镜像免费下载
- 4电脑公司Ghost Win7 Sp1 喜迎国庆 装机万能版2020年10月(32位) 提供下载
- 5雨林木风Ghost Win7 x64 SP1 极速装机版2021年3月(64位) 高速下载
- 6笔记本&台式机专用系统 GHOSTXPSP3 2021年10月 喜迎国庆 海驱版 ISO镜像高速下载
- 7雨林木风Ghost Win7 x64 SP1 极速装机版2019年10月(64位) 高速下载
- 8电脑公司 装机专用系统Windows10 x86企业版 版本1903 2021年12月(32位) ISO镜像快速下载
- 9番茄花园Ghost Win8.1 (X32) 新春特别 纯净版2022年2月(免激活) ISO镜像免费下载
- 10新萝卜家园 GhostWin7 SP1 电脑城极速装机版2018年7月(32位) ISO镜像免费下载