欢迎访问linux宝典,请记住本站唯一域名:www.linuxbaodian.com

ln命令

来源:原创    更新时间:2018-09-09 22:30:18    作者:管理员    浏览:1659
  • 命令描述
在文件之间创建链接。
软链接:相当于快捷方式,文件的inode号不一样,软链接删除对源文件没影响,源文件删除软链接失效
硬链接:相当于给一个文件开了多个门,文件的inode号一样,删除链接文件对源文件没影响,删除源文件对链接文件也没影响,当文件全部都删除完之后,链接数变为0之后文件才算是删除

  • 命令语法
ln [选项] [参数]
  • 命令选项
-b或--backup:删除,覆盖目标文件之前的备份;
-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:显示版本信息。
  • 命令参数
源文件:指定连接的源文件。如果使用-s选项创建符号连接,则“源文件”可以是文件或者目录。创建硬连接时,则“源文件”参数只能是文件;
目标文件:指定源文件的目标连接文件。
  • 命令实例


实例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


上一条命令:vim/vi

下一条命令:sysctl

笔记分享

表情

共0条分享记录
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

相关内容

最受欢迎

猜你喜欢

最受争议