The Linux Command Line 读书笔记 - 部分内容来自 http://billie66.github.io/TLCL/book/chap03.html
文件系统
类似于 Windows
,一个“类 Unix”
的操作系统,比如说 Linux
,以分层目录结构来组织所有文件。 这就意味着所有文件组成了一棵树型目录(有时候在其它系统中叫做文件夹), 这个目录树可能包含文件和其它的目录。文件系统中的第一级目录称为根目录。 根目录包含文件和子目录,子目录包含更多的文件和子目录,依此类推。
注意(类 Unix
系统)不像 Windows
,每个存储设备都有一个独自的文件系统。类 Unix
操作系统, 比如 Linux
,总是只有一个单一的文件系统树,不管有多少个磁盘或者存储设备连接到计算机上。 根据负责维护系统安全的系统管理员的兴致,存储设备连接到(或着更精确些,是挂载到)目录树的各个节点上。
概述为:
Linux
系统中的文件系统和Windows
系统 差不多,但是永远只有一个文件系统,不像Windows
系统的分为多个盘符(C、D、E...
);
根目录
上面讲,Linux
系统的文件系统只有一个,它的最顶级目录,就是 根目录 ,用 /
表示 ;
打印当前所在目录命令
pwd - Print name of current working directory
博主现在 根目录 下面的 home
目录下面的当前用户目录下,因此打印出 /home/yiaz
;
列出目录内容命令
ls — List directory contents
ls
可以列出一个目录包含的文件及子目录,如果不带参数,则默认列出当前所在目录包含的文件及子目录,如果带参数,则列出参数目录包含的文件及子目录。
博主先切换到 /
,然后使用缺省的 ls
,默认列出当前所在目录,也就是 根目录 下面包含的文件和子目录;
然后使用 ls /home/yiaz
列出 /home/yiaz
目录下包含的文件和子目录 ;
切换路径命令
cd - Change directory
使用 cd xxx
切换到 xxx
目录 ;
xxx
可以是绝对路径,也可以是相对路径 ;
-
绝对路径
- 绝对路径从 根目录 开始,比如,现在我们根目录下面有一个
home
目录,home
目录下有一个yiaz
目录 ; - 无论我们在当前工作目录在哪里,我们都可以通过命令
cd /home/yiaz
切换到yiaz
目录;
博主开始在根目录下面,然后通过绝对路径,切换到yiaz
目录下;
- 绝对路径从 根目录 开始,比如,现在我们根目录下面有一个
-
相对路径
-
相对路径从 当前所在路径 开始。
-
为了相对路径的特殊表达,我们使用
.
和..
来分别表示 当前所在目录 和 父目录 ;这两个特殊表达也可以在其他命令中使用,不局限于cd
命令; -
其中
./
可以省略,cd
默认就是在当前目录的相对路径 -
比如前面我们已经切换到
/home/yiaz
目录下面了,现在我们在切换到根目录
:我们依然可以使用
cd /
直接使用绝对路径切换,也可以使用刚学的相对路径cd ./../..
,先是.
表示当前目录/home/yiaz
然后./..
表示当前目录的父目录即/home
,最后再用./../..
表示/home
的父目录/
:
-
关于 cd
的一些快捷键
快捷键 | 运行结果 |
---|---|
cd | 直接更改工作目录到你的 home 目录。 |
cd - | 更改工作目录到先前的工作目录。 |
cd ~user_name | 更改工作目录到用户家目录。例如, cd ~bob 会更改工作目录到用户“bob” 的 home 目录。 |
文件名的规则
Linux
系统的 隐藏文件 的文件名是以.
开头的,直接ls
不会列出隐藏文件,带上参数-a
即ls -a
即可列出隐藏文件;- 大小写敏感
Linux
系统对文件后缀名没有要求,你可以为文件起任何你喜欢的后缀名,或者没有后缀;但是注意的是,是Linux
对文件后缀名无所谓,不是Linux
下面的应用对文件后缀名无所谓。举个例子,java文件,Linux下面也要使用
.class
这样才会被JDK
认识Linux
系统文件名可以包含 空格、标点符号 ;但是标点符号仅可使用. - _
三个;- 虽然文件名可以使用空格,但是建议不要使用,使用
_
代替 ;