您现在的位置是:首页> 操作系统> Linux

ln -s创建软链接的路径问题

  • 4274人已阅读
  • 时间:2018-11-03 00:12:46
  • 分类:Linux
  • 作者:祥哥

创建软链接,是非常简单的,直接用ln -s 原始文件路径 软链接文件路径就OK了

例:给a.txt创建了链接a_soft
ln -s a.txt a_soft

但是,如果当前所在的目录为/home,要给该目录下的a.txt创建一个软链接a_soft,放在其子目录B下,

ln -s ./a.txt ./B/a_soft

结果很不幸,这是错误的,创建出来的a_soft文件是找不到a.txt的。为什么呢?

这是因为,ln -s创建软链接时,如果原始文件是相对路径,其相对路径的基准路径为链接文件的路径。(这么理解,就是通过链接文件找到源文件,因此就是以链接文件的路径为当前的路径了)。所以上面的文件路径为B的目录,而源文件则认为是B目录下的文件,因此当然错误了。

解决办法

#使用绝对路径
ln -s /home/a.txt ./B/a_soft
#使用相对路径
ln -s ../a.txt ./B/a_soft


Top