3 文件与路径
当我们打开一个终端后,肯定很好奇,为什么会有首行会有几个字符,点击空格这些字符会跟着光标一起跑到下一行。
uos@pc:~$
uos@pc:~$
uos@pc:~$
这就涉及到Linux操作系统的目录结构了。接下来我们展开讲讲。
终端前这些字符的组成
关注上面的图片,字符串由三部分组成,并且通过符号和颜色进行了区分。首先用户名就是你当前登录的账户的名称,安装系统时创建的,难以修改。计算机名则是电脑的名称,这个可以在系统设置内修改。最后蓝色的就是路径了,表示接下来的指令,将会在什么地方执行。
目录是什么,路径呢?
文件不用多说,目录是什么?
目录其实就是一个文件夹,只不过由于Linux中“文件构成一切”的思想指导下,文件夹也成为了一个文件,因此被称为“目录”以示区分。实际上我们不需要过于较真,本文档也会混用“文件夹”和“目录”的名字。
路径则是指向某个具体文件或目录的完整地址,他们都是以斜杠 “/” 开头的,使用斜杠"/“进行层级分隔。
比如,系统内置的python3软件的可执行文件的路径是/usr/bin/python3
,表示根目录下的usr文件夹,进入后点开bin文件夹,里面的python3文件。
有一些特殊的目录,他们被赋予了独特的路径,比如:
-
根目录” / " ,这个目录是系统的基石,类似于windows系统的C盘根目录。
-
主目录,家目录 " ~ " ,主目录是用波浪线表示的,具体路径是
/home/username/
,其中username替换成具体的用户名。 -
如果用户是root,那么他的 ~ 表示的路径则是
/root/
。 -
" ./ “,这个表示当前目录,如果需要执行本文件夹下面的start.sh脚本的时候,就应该用
./start.sh
-
" .. / “这个表示上一级目录,比如
~
的上一级是/home/
由于上面的特殊路径的存在,所有路径也都可以用上面的符号开头。
上个章节命令行与终端中我们提到,使用三种方式打开的终端会有细微区别,区别就在于所处的位置上。
用开始菜单图标和快捷键打开的终端,当前目录都会定位在当前用户的主目录,所以终端前面的字符会有一个~符号。但是右键–“在此处打开终端”,命令的执行位置则是右键的位置。这一点很有帮助,当路径过长或者你不知道如何找到某一段路径的时候,比如在U盘里操作,就可以通过“文件管理器”先打开对应的文件夹,然后右键启动终端,就可以直接操作了。
要查看我们终端的当前路径,使用指令pwd
,就会显示从”/“开始的完整路径。
如果要切换当前的路径,使用cd
指令:
如何隐藏文件或目录
在Windows里面,我们需要隐藏一个文件夹可以在文件属性里设置。但是在Linux中更加简单:
所有以 ‘.’ 开头的文件都是隐藏文件。比如~/.config
,这个是用户的个人配置文件存放目录,就是隐藏的。
查看隐藏文件时,终端中需要使用ls -a
指令才能显示,文件管理器可以使用 CTRL + H 组合键显示。
* · 星号的作用
*
号在路径的表示中有特殊含义,它被成为通配符,可以替代任意多个字符。举个例子说明一下:
$ ls /dev/vda
/dev/vda
$ ls /dev/vda*
/dev/vda /dev/vda1
/dev下有vda和vda1两个文件,如果列出文件的时候只输入了vda,我们是看不到vda1的,但是加上通配符*,就能既看见vda,又能看见vda1了。当要批量操作文件的时候,通配符可以派上用场。
系统盘和数据盘
“数据盘”其实是方便理解的伪概念。我们默认Windows的C盘是系统盘,D盘是数据盘,但是到了Linux操作系统中,所谓“数据盘”其实是系统盘的一部分,单独给了一个入口。
系统盘直接指向/
,是系统的根目录。
数据盘有些区别,在银河麒麟操作系统中,数据盘是指向的/data
目录;统信UOS系统不仅需要是/data
目录,还需要对应硬盘分区名称为_dde_data
。其他Linux操作系统一般没有“数据盘”概念。
但是在两个系统中,双击“数据盘”的盘符,大概率实际进入的却是“主目录 ~ ”,请注意识别实际进入的文件夹!