Linux创建链接(ln)教程
在
ln 命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化。
Linux软链接与硬链接
软链接
类似于 Windows 系统中给文件创建快捷方式,即产生一个特殊的文件,该文件用来指向另一个文件,此链接方式同样适用于目录。
软链接可以 跨文件系统 ,硬链接不可以。
软链接可以对一个不存在的文件名进行链接。
软链接可以对目录进行链接。
硬链接
在 Linux 中,文件的基本信息都存储在 inode 中,而硬链接指的就是给一个文件的 inode 分配多个文件名,通过任何一个文件名,都可以找到此文件的 inode,从而读取该文件的数据信息。
硬链接,以文件副本的形式存在。但不占用实际空间。
不允许给目录创建硬链接。
硬链接只有在同一个文件系统中才能创建。
Linux ln命令详解
功能
创建软链接或硬链接。
语法
ln [参数] [源文件或目录] [目标文件或目录]
常用参数
参数
描述
-b
删除,覆盖以前建立的链接。
-d
允许超级用户制作目录的硬链接。
-f
强制执行。
-i
交互模式,文件存在则提示用户是否覆盖。
-n
把符号链接视为一般目录。
-s
软链接(符号链接)。
-v
显示详细的处理过程。
说明
ln 的链接分软链接和硬链接两种,软链接就是 ln –s 源文件 目标文件,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接 ln 源文件 目标文件,没有参数 -s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。
ln 指令用在链接文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则会把前面指定的所有文件或目录复制到该目录中。若同时指定多个文件或目录,且最后的目的地并非是一个已存在的目录,则会出现错误信息。
Linux ln命令常用实例
实例
实例
描述
ln srcFile destFile
创建一个硬链接
ln -s srcFile destFile
创建一个软链接
说明
使用 -s 选项,创建的是软链接,默认,创建的是硬链接。
创建硬链接
语法
ln srcFile destFile
案例
我们首先,使用
cd /tmp
运行后,终端输出如下:
现在,我们使用 echo 命令,在当前目录下创建一个新文件并写入内容,具体命令如下:
echo "Hello HaiCoder From Temp" >> haicoder.txt
运行后,终端输出如下:
现在,我们使用
ls -l haicoder.txt
运行后,终端输出如下:
我们看到,显示了我们创建的文件的详细信息,现在,我们再次使用 ln 命令,对该文件创建一个硬链接,具体命令所下所示:
ln haicoder.txt /home/hailink.txt
运行后,终端输出如下:
现在,我们再次使用 ls 命令,查看 home 目录下我们创建的链接文件,命令如下:
ls -l /home/hailink.txt
运行后,终端输出如下:
我们看到,硬链接我们已经创建了,现在,我们使用 cat 命令,查看硬链接的文件内容,具体命令如下:
cat /home/hailink.txt
运行后,终端输出如下:
我们看到,硬链接的文件内容与原始文件的文件内容是一样的,现在,我们修改硬链接的文件内容,具体命令如下:
echo "Append Line" >> /home/hailink.txt
运行后,终端输出如下:
修改完毕之后,我们再次使用 cat 命令,查看硬链接的文件内容与原始的文件内容,具体命令如下:
cat /home/hailink.txt /tmp/haicoder.txt
运行后,终端输出如下:
我们看到,我们修改硬链接的文本内容,原始文件内容也一起被修改了。
创建软链接
语法
ln -s srcFile destFile
案例
我们首先,使用 echo 命令,新建一个文件,并写入内容,具体命令如下:
echo "Hello HaiCoder From Temp" >> /tmp/haicodersoft.txt
运行后,终端输出如下:
现在,我们使用
cat /tmp/haicodersoft.txt
运行后,终端输出如下:
我们看到,我们已经新建了文件,并写入了内容,现在,我们使用 ln 命令,对该文件创建一个软链接,具体命令如下:
ln -s /tmp/haicodersoft.txt /home/haicodersoftlink.txt
运行后,终端输出如下:
现在,我们使用 ls 命令,查看我们创建的软链接,具体命令如下:
ls -l /home/haicodersoftlink.txt
运行后,终端输出如下:
我们看到,我们已经创建了一个软连接,并指向了源文件,现在,我们修改软链接的内容,具体命令如下:
echo "Append Soft Link" >> /home/haicodersoftlink.txt
运行后,终端输出如下:
现在,我们使用 cat 命令,查看链接文件与源文件的内容,具体命令如下:
cat /home/haicodersoftlink.txt /tmp/haicodersoft.txt
运行后,终端输出如下:
我们看到,软链接的内容与源文件内容都被修改了。
Linux创建链接(ln)总结
在 Linux 中,ln 命令用于给指定的文件创建一个链接文件,该命令既可以用于创建软链接文件也可以用于创建硬链接文件。
ln 命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化。