如何利用linux的ln软链接命令,移动文件夹位置

如何利用linux的ln软链接命令,移动文件夹位置,第1张

linux下查看软连接的信息使用命令“ls -L”最后一列就是原始地址(实际指向的文件的位置)。ln -s /home/basic/dl/ build/执行完成后,会在build路径下dl的目录, 使用ls -l查看会发现build下的dl-〉/home/basic/dl,进入build/dl下即可查看与访问...

linux

链接分为硬链接和软链接之分,命令如下:

1、硬链接:ln

file1

file2

2、软连接:ln

-s

file1

file2

他们的区别在于,对于目录

只能做软链接

(ln

-s

bbb

ccc)

Linux

软连接与硬连接的区别:

对于一个文件来说,有唯一的索引接点与之对应,而对于一个索引接点号,却可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问该文件。注意在Linux下是一切皆文件的啊,文件夹、新加的硬盘

...都可以看着文件来处理的啊。

连接有软连接和硬连接(hard

link)之分的,软连接(symbolic

link)又叫符号连接。符号连接相当于Windows下的快捷方式。

不可以对文件夹建立硬连接的,我们通常用的还是软连接比较多。

eg:

ln

-s

source

dist

#

建立软连接

ln

source

dist

#

建立硬连接

软链接实际上只是一段文字,里面包含着它所指向的文件的名字,系统看到软链接后自动跳到对应的文件位置处进行处理;相反,硬联接为文件开设一个新的目录项,硬链接与文件原有的名字是平权的,在Linux看来它们是等价的。由于这个原因,硬链接不能连接两个不同文件系统上的文件。

(1)软连接可以

跨文件系统

,硬连接不可以

。实践的方法就是用共享文件把windows下的

aa.txt文本文档连接到linux下/root目录

bb,cc

.

ln

-s

aa.txt

/root/bb

连接成功

。ln

aa.txt

/root/bb

失败

(2)关于

I节点的问题

。硬连接不管有多少个,都指向的是同一个I节点,会把

结点连接数增加,只要结点的连接数不是

0,文件就一直存在,不管你删除的是源文件还是

连接的文件

。只要有一个存在

,文件就

存在

(其实也不分什么源文件连接文件的

,因为他们指向都是同一个

I节点)。

当你修改源文件或者连接文件任何一个的时候

,其他的文件都会做同步的修改。软链接不直接使用i节点号作为文件指针,而是使用文件路径名作为指针。所以

删除连接文件

对源文件无影响,但是删除源文件,连接文件就会找不到要指向的文件

。软链接有自己的inode,并在磁盘上有一小片空间存放路径名.

(3)软连接可以对一个不存在的文件名进行连接

(4)软连接可以对目录进行连接。

备注:I节点

:它是UNIX内部用于描述文件特性的数据结构.我们通常称I节点为文件索引结点(信息结点).i节点含有关于文件的大部分的重要信息,包括文件数据块在磁盘上的地址.每一个I节点有它自己的标志号,我们称为文件顺序号.I节点包含的信息

1.文件类型

2.文件属主关系

3.文件的访问权限

4.文件的时间截.

ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个不同的链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件。

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

-s 是代号(symbolic)的意思。

两点注意:

第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;

第二,ln的链接又 软链接和硬链接两种,软链接就是ln –s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。

如果你用ls察看一个目录时,发现有的文件后面有一个@的符号且文件或文件夹的颜色和别的不一样,那就是一个用ln命令生成的文件,用ls –l命令去察看,就可以看到显示的link的路径了。

指令详细说明:

指令名称 : 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 : 显示版本

范例 :

将档案 yy 产生一个 symbolic link : zz

1

ln -s yy zz

将档案 yy 产生一个 hard link : zz

1

ln yy xx

PS:如果想要删除链接,则像普通文件一样直接rm 链接名称即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12048280.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存