玩转windows subsystem之路径优化

前言

进来玩一会你就会发现,最大的不方便就是路径,为了方便与windows进行交互,我们尽量的把文件的IO操作都使用windows的盘下,即C盘D盘之类的。 而设备挂载之后是默认放在/mnt/c等下面的,每次操作起来十分的不便,那么有没有办法来优化这一点呢?

ln命令

ln是linux中一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。

命令格式

ln [参数][源文件或目录][目标文件或目录]

命令参数

-b 删除,覆盖以前建立的链接
-d 允许超级用户制作目录的硬链接
-f 强制执行
-i 交互模式,文件存在则提示用户是否覆盖
-n 把符号链接视为一般目录
-s 软链接(符号链接)
-v 显示详细的处理过程
-S “-S<字尾备份字符串> ”或 “--suffix=<字尾备份字符串>”
-V “-V<备份方式>”或“--version-control=<备份方式>”
--help 显示帮助信息
--version 显示版本信息

命令介绍

Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。

硬连接

硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

软连接

软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

额外说明

  1. 目录只能创建软链接
  2. 目录创建链接必须用绝对路径,相对路径创建会不成功。
  3. 在链接目标目录中修改文件都会在源文件目录中同步变化

拓展

实际上windows中也有这样的命令,只不过没有linux中应有的这么广泛,那么windows下的命令是什么呢?mklink

操作

在看完以上关于ln命令的介绍后,相信你也已经明白,此处我们应该选择软连接,于是我们可以操作如下:

ln -s /mnt/c /c
ln -s /mnt/d /d

这样我们便把windows下的C盘,变成了linux下的/c。 我们试着

mkdir /c/test

回到window下的C盘看看,是否真的有这么一个文件夹呢?

版权说明

本页地址为 https://post.zz173.com/detail/-SresxqvN5BVnosm2MgyzQ.html,本文作者为落月
本文采用 署名-相同方式共享 3.0 中国大陆许可协议 ,分享、演绎需署名且使用相同方式共享。转载请务必保留本页网址和作者信息,否则即为侵权。

– EOF –