linux的软连接命令(文件夹建立软连接)

Linux命令之软连接详解。结合示例详细说明软链接的创建,同时给出如何正确删除一个软链接。

大家好,又见面了,我是你们的朋友全栈君。

前言

  • 文章来源:CSDN@LawsonAbs

1.软连接

1.1 创建语法

ln -s target source
解释下:
ln -s:表示创建一个软连接;
target:表示目标文件(夹)【即被指向的文件(夹)】
source:表示当前目录的软连接名。【源文件(夹)】

1.2 具体示例

  • step 1.创建测试文件及文件夹
[root@server6 ~]# mkdir test_chk
[root@server6 ~]# touch test_chk/test.txt 
[root@server6 ~]# echo "hello spark" > test_chk/test.txt 
[root@server6 ~]# cat test_chk/test.txt 
hello spark
[root@server6 ~]# ll
总用量 84
-rw-------.  1 root root  1257 616 01:17 anaconda-ks.cfg
drwxr-xr-x. 25 root root  4096 111 10:28 azkabanJob
-rw-r--r--.  1 root root 67322 114 10:24 azkabanJob.zip
drwxr-xr-x.  4 root root    37 713 11:01 hadoop_temp
-rw-r--r--.  1 root root    54 74 14:11 HelloLinux.txt
drwxr-xr-x.  2 root root    22 114 10:41 test_chk
-rw-r--r--.  1 root root    67 108 15:52 zookeeper.out
[root@server6 ~]# ln -s test_chk/ test_chk_ln
[root@server6 ~]# ll
总用量 84
-rw-------.  1 root root  1257 616 01:17 anaconda-ks.cfg
drwxr-xr-x. 25 root root  4096 111 10:28 azkabanJob
-rw-r--r--.  1 root root 67322 114 10:24 azkabanJob.zip
drwxr-xr-x.  4 root root    37 713 11:01 hadoop_temp
-rw-r--r--.  1 root root    54 74 14:11 HelloLinux.txt
drwxr-xr-x.  2 root root    22 114 10:41 test_chk
lrwxrwxrwx.  1 root root     9 114 10:42 test_chk_ln -> test_chk/
-rw-r--r--.  1 root root    67 108 15:52 zookeeper.out
[root@server6 ~]# cd test_chk_ln/
[root@server6 test_chk_ln]# ll
总用量 4
-rw-r--r--. 1 root root 12 114 10:41 test.txt
[root@server6 test_chk_ln]# cat test.txt 
hello spark
[root@server6 test_chk_ln]# ll
总用量 4
-rw-r--r--. 1 root root 12 114 10:41 test.txt
[root@server6 test_chk_ln]# cat test.txt 
hello spark

2.注意

2.1 创建软连接时,不用创建文件夹。

2.2 命令示例解释

执行的命令是: ln -s /storage/lawson/scores scor
其含义就是:将scor指向 /storage/lawson/scores/目录下
在这里插入图片描述
这里是当前的scor 指向 /storage/lawson/scores 中。这里显示红色,是因为/storage/lawson/scores这个目录不存在,如果创建该目录,那就可以得到蓝色的显示了。
在这里插入图片描述
需要注意的是,当前所有目录下的文件都不能重名,因为我之前有一个文件夹是scores,所以这里就简单的命名成了scor

2.3 软连接的删除

rm -rf ./test_chk_ln/ 会删除文件夹下的所有内容,但是没有删除这个链接;
rm -rf ./test_chk_ln 则是仅删除这个软链接,不会删除下面的内容。

  • 错误示范
[root@server6 test_chk_ln]# cd ..
[root@server6 ~]# ll
总用量 84
-rw-------.  1 root root  1257 616 01:17 anaconda-ks.cfg
drwxr-xr-x. 25 root root  4096 111 10:28 azkabanJob
-rw-r--r--.  1 root root 67322 114 10:24 azkabanJob.zip
drwxr-xr-x.  4 root root    37 713 11:01 hadoop_temp
-rw-r--r--.  1 root root    54 74 14:11 HelloLinux.txt
drwxr-xr-x.  2 root root    22 114 10:41 test_chk
lrwxrwxrwx.  1 root root     9 114 10:42 test_chk_ln -> test_chk/
-rw-r--r--.  1 root root    67 108 15:52 zookeeper.out
[root@server6 ~]# rm -rf ./test_chk_ln/
[root@server6 ~]# ll
总用量 84
-rw-------.  1 root root  1257 616 01:17 anaconda-ks.cfg
drwxr-xr-x. 25 root root  4096 111 10:28 azkabanJob
-rw-r--r--.  1 root root 67322 114 10:24 azkabanJob.zip
drwxr-xr-x.  4 root root    37 713 11:01 hadoop_temp
-rw-r--r--.  1 root root    54 74 14:11 HelloLinux.txt
drwxr-xr-x.  2 root root     6 114 10:42 test_chk
lrwxrwxrwx.  1 root root     9 114 10:42 test_chk_ln -> test_chk/
-rw-r--r--.  1 root root    67 108 15:52 zookeeper.out
[root@server6 ~]# cd test_chk
[root@server6 test_chk]# ll
总用量 0
[root@server6 test_chk]# ll
总用量 0

可以发现该文件夹下的内容都被删了。。。

  • 正确删除软连接
[root@server6 ~]# rm -rf ./test_chk_ln
[root@server6 ~]# ll
总用量 84
-rw-------.  1 root root  1257 616 01:17 anaconda-ks.cfg
drwxr-xr-x. 25 root root  4096 111 10:28 azkabanJob
-rw-r--r--.  1 root root 67322 114 10:24 azkabanJob.zip
drwxr-xr-x.  4 root root    37 713 11:01 hadoop_temp
-rw-r--r--.  1 root root    54 74 14:11 HelloLinux.txt
drwxr-xr-x.  2 root root    22 114 10:44 test_chk
-rw-r--r--.  1 root root    67 108 15:52 zookeeper.out
[root@server6 ~]# cd test_chk/
[root@server6 test_chk]# ll
总用量 4
-rw-r--r--. 1 root root 12 114 10:44 test.txt

参考文章

  • https://www.cnblogs.com/cartsp/p/6437046.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/129614.html原文链接:https://javaforall.net

(2)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 另一个视角解读计算机编码-补码编码

    另一个视角解读计算机编码-补码编码

    2022年3月11日
    40
  • java的三种代码注释方式「建议收藏」

    java的三种代码注释方式「建议收藏」1.注释的作用注释是对程序语言的说明,有助于开发者之间的交流,方便理解和维护程序。注释不是编程语句,不会被编译器执行。一些代码量少较少的程序,我们加不加注释对我们的理解和修改代码没有太大影响;如果是淘宝;抖音等那种中大型程序,没有了代码注释,对于日后程序运行维护将是很大困难。我们可以在平时编码过程中养成规范代码注释习惯,也是我们成为优秀程序员的原因2.java中的注释分类Java中的注释分为以下三种:单行注释;多行注释;文档注释1.单行注释java代码中使用双斜杠单行注释//,一般单行注释,注释少

    2022年7月7日
    24
  • C++ 清空消息队列

    C++ 清空消息队列

    2021年12月6日
    79
  • Idea激活码最新教程2019.3.2版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2019.3.2版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2019 3 2 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2019 3 2 成功激活

    2025年5月24日
    5
  • 激活成功教程ftp密码代码

    激活成功教程ftp密码代码激活成功教程ftp密码代码这是一个激活成功教程ftpserver密码的程序,但是只是娱乐使用而已,不要太当真设计思路如下//写一个ftp密码激活成功教程器//1创建秘钥#include<stdio.h>#include<string.h>#include<stdlib.h>intmain(){ char*ipaddress=”19…

    2025年6月12日
    3
  • Shell if else语句「建议收藏」

    Shell if else语句「建议收藏」Shellifelse语句if语句通过关系运算符判断表达式的真假来决定执行哪个分支。Shell有三种if…else语句:if…fi语句; if…else…fi语句; if…elif…else…fi语句。1)if…else语句if…else语句的语法:if[expression…

    2022年7月11日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号