ln命令
来源:原创 更新时间:2018-09-09 22:30:18 作者:管理员 浏览:1659
- 命令描述
软链接:相当于快捷方式,文件的inode号不一样,软链接删除对源文件没影响,源文件删除软链接失效
硬链接:相当于给一个文件开了多个门,文件的inode号一样,删除链接文件对源文件没影响,删除源文件对链接文件也没影响,当文件全部都删除完之后,链接数变为0之后文件才算是删除
- 命令语法
- 命令选项
-d或-F或——directory:建立目录的硬连接;
-f或——force:强行建立文件或目录的连接,不论文件或目录是否存在;
-i或——interactive:覆盖既有文件之前先询问用户;
-n或--no-dereference:把符号连接的目的目录视为一般文件;
-s或——symbolic:对源文件建立符号连接,而非硬连接;
-S<字尾备份字符串>或--suffix=<字尾备份字符串>:用"-b"参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,预设的备份字符串是符号“~”,用户可通过“-S”参数来改变它;
-v或——verbose:显示指令执行过程;
-V<备份方式>或--version-control=<备份方式>:用“-b”参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,这个字符串不仅可用“-S”参数变更,当使用“-V”参数<备份方式>指定不同备份方式时,也会产生不同字尾的备份字符串;
--help:在线帮助;
--version:显示版本信息。
- 命令参数
目标文件:指定源文件的目标连接文件。
- 命令实例
实例1: 默认什么都不加是创建硬链接,相当于cp -l
目录默认是不能创建硬链接的,因为硬链接文件的inode号都是一样,所以不能跨分区来建立
[root@baodian tmp]# touch ln_test.txt [root@baodian tmp]# ln ln_test.txt ln_link.txt [root@baodian tmp]# ll -i total 0 393400 -rw-r--r-- 2 root root 0 Jul 15 13:21 ln_link.txt 393400 -rw-r--r-- 2 root root 0 Jul 15 13:21 ln_test.txt
#删除源文件对链接文件没影响
[root@baodian tmp]# rm -rf ln_test.txt [root@baodian tmp]# ll -i total 0 393400 -rw-r--r-- 1 root root 0 Jul 15 13:21 ln_link.txt
实例2: -s 创建软链接,相当于cp -s
软链接可以随意的对目录或者文件,但是链接的时候必须写绝对路径,要不你不在这个目录下这个软连接的内容就失效了,因为他不知道你是在那个地方形成的链接
[root@baodian tmp]# echo "test link " >> ln_s.test 对一个文件里面增加内容,如果文件没有就创建 [root@baodian tmp]# ln -s /tmp/ln_s.test /tmp/ln.txt 创建一个软连接 [root@baodian tmp]# ll -i 长格式显示,并显示inode号 total 4 392450 -rw-r--r-- 1 root root 11 Jul 15 13:30 ln_s.test 393400 lrwxrwxrwx 1 root root 14 Jul 15 13:30 ln.txt -> /tmp/ln_s.test [root@baodian tmp]# rm -rf ln.txt 删除软连接,看看源文件有没有影响 [root@baodian tmp]# cat ln_s.test 查看源文件的内容,能查看成功 test link [root@baodian tmp]# ln -s /tmp/ln_s.test /tmp/ln.txt [root@baodian tmp]# rm -rf ln_s.test 删除源文件,看看软连接是不是失效 [root@baodian tmp]# cat ln.txt cat: ln.txt: No such file or directory 提示文件或目录不存在,发现软连接还在,说明软连接失效 [root@baodian tmp]# ls ln.txt