第一章 Linux 文件管理命令
\(\quad\) 随着云应用的兴起,云服务器也是愈加普及。对于各种各样的应用,如web应用、App、桌面应用、游戏等需要联网的程序,他们的后端服务器往往都是 linux 系统。学好 linux 能够帮助我们方便快捷的搭建项目。本章节以 Ubuntu 为例,对 linux 系统中文件系统进行介绍,并给出常用的命令操作。
文件系统
\(\quad\) linux文件系统结构如下图所示:
其中,常见的部分为
- bin: 主要用于放置可执行的二进制文件
- dev: 存放设备相关文件信息
- etc: 存放配置文件相关信息
- home: 用户目录,内含多个用户的文件夹
- lib: 用于存放库文件
- proc: 存放过程相关信息
- var: 含有日志文件 log
上述内容稍作了解,能够帮助我们快速找到相关文件所在位置。
linux 文件系统中最常见的是路径。路径又分为的绝对路径和相对路径。
绝对路径: 从/
目录开始描述,直到目标文件夹的路径。绝对路径一定有根目录/
为始,例如/home/xss
这个目录。
相对路径: 从当前工作目录开始描述,直到目标文件夹的路径。不以/
为始,如../
指的是父目录。
其中,有几个特殊的路径字符需要牢记。 .
指的是当前工作目录, ..
指的是父目录, ~
指的是用户主目录, /
指的是根目录。
文件管理常用命令
\(\quad\) 本小结介绍 linux 常见的命令。
(1) ctrl c
: 取消命令,并且换行
\(\quad\) 当程序命令执行时,可以ctrl c
取消执行。
(2) ctrl u
: 清空本行命令
(3) tab
键:可以补全命令和文件名,如果补全不了快速按两下tab键,可以显示备选选项
(4) ls
: 列出当前目录下所有文件,蓝色的是文件夹,白色的是普通文件,绿色的是可执行文件
\(\quad\) -l 表示显示文件的详细信息,其中第一个字符串表示文件类型,3-3-3表示文件主,文件主同组用户,其他用户的读写权限。
\(\quad\) -a 显示所有文件,包含.
开头的隐藏文件
\(\quad\) -A 和 -a 类似,但是不显示父目录文件..
和当前目录文件.
\(\quad\) -h 表示 human 人性化,比如 -l 显示的文件大小单位变化(b, kb, mb, gb),更方便阅读。
(5) pwd
: 显示当前工作路径。
(6) cd XXX
: 进入XXX目录下, cd .. 返回上层目录。 cd - 表示返回上一个目录(不是上一级目录)。
(7) cp XXX YYY
: 将XXX文件复制成YYY,XXX和YYY可以是一个路径。
# 他会首先判断第二个参数是不是文件夹
cp a/1.txt b # 将 directory a 中 1.txt 复制到 b 目录中,文件名不变,为 1.txt
cp a/1.txt b/2.txt # 将 directory a 中 1.txt 复制到 b 目录中,文件名 2.txt
cp a b -r # r 表示 recusion,若存在 b,那么将 a 整体copy到 b 中(包括a自己)
#若不存在b,那么创建 b,将a中文件放到 b 中(不包括 a 自己)
cp a/* b -r # 表示将 a 中文件,放到 b目录中(b 必须存在)
(8) mkdir XXX
: 创建目录XXX
\(\quad\) -p 表示 parent 若路径不存在,就创建出来 mkdir a/b/c
,若不存在 a,那么 a、b、c目录都会创建。
(9) rm XXX [YYY ZZZ]
: 删除普通文件(可以多个);
\(\quad\) rm XXX -r: 删除文件夹
\(\quad\) 往往会结合使用正则表达式 *
(10) mv XXX YYY
: 将XXX文件移动到YYY
\(\quad\) 和cp命令一样,XXX和YYY可以是一个路径;重命名也是用这个命令。没有 -r
(11) touch XXX
: 创建一个文件
(12) cat XXX
: 展示文件XXX中的内容
(13) 复制文本
\(\quad\)windows/Linux下:Ctrl + insert,Mac下:command + c
(14) 粘贴文本
\(\quad\)windows/Linux下:Shift + insert,Mac下:command + v
(15) history
\(\quad\) 显示之前执行的 linux 命令
(16) wc
\(\quad\) wc -l : 统计行
\(\quad\) wc -c: 统计字节数
\(\quad\) wc -m:统计字符数,不能与-c同时使用
\(\quad\) wc -w:统计字数