今天稍微有空,开始尝试搭建个人博客,开发环境自然是python3.6,wsl for ubuntu,vim和django。然而今天情况有些特殊,在学习过程中遇到了需要拷贝开源的js文件的问题,而在vim中成段拷贝的话担心会遇到格式不对的问题,可能会带来不必要的麻烦,因此用到了VS Code这个编辑器。
可问题在于VS Code作为WIN系统的编辑器,虽然拷贝操作很简单,但是生成的文件肯定是存在于WIN系统下的,那么怎么样把VS Code编辑生成的文件转移到相应的linux子系统文件夹下呢。
STEP.1
很明显,既然WSL是作为windows下的linux子系统存在的,那么必然wsl也会有类似的文件系统可以在window内直接操作,尽管微软爸爸一直强调不推荐在windows外部环境下对linux子系统进行操作,但是特殊情况特殊原因吗,让我们找一下linux子系统到底藏在哪里?
ubuntu子系统路径.png
果然藏得很深。。。
直到这儿,我们才看到了自己的用户界面,那么在这里面直接拷贝文件夹或者文件可不可以被读到呢?
答案是不可以的。原理很简单,想必大家对Linux有过了解的都听说过这么一句话,“各个组件和设备在Linux下面都是一个文件”,或许你不理解这句话,但是有个概念你肯定已经悟到了,那就是linux的文件系统和windows的肯定大相径庭,至少在图形操作界面,让他们直接“互通有无”是不可能的。
展开来说,如果你使用ls -al查看linux文件属性,会发现如下字符:
drwxr-xr-x 1 root root 4096 May 8 14:33 article
在这里我们只观察前面的10个字符,可见出去第一个“d”是代表文件或者文件夹的,剩下九个字符依次代表了三组可用权限,分别针对“文件拥有者具备的权限”,“用户组账号拥有的权限”,“其他账号的权限”,“rwx”分别代表了“可读,可写,可执行”。
而如果我们对WIN环境下的文件和文件夹查看:
WIN下文件属性.png
因此,如果我们想对其进行操作,必须要把该文件夹的权限属性设置为Linux可读取的。
STEP2
其实解决方法很简答,在Linux子系统中同样可以访问主机的文件或者文件夹,这时如果我们使用“ls -l”查看文件权限,可以看到windows下文件或文件夹也可以被linux读取。
cd /mnt/c/ #访问主机中的C盘符
linux子系统访问主机
那么这时我们只需要使用熟悉的mv命令将目标文件夹转移到我们需要的位置即可了。
嗯,水了一篇,我知道,继续愉快的搭博客!
网友评论