Linux文件系统基础知识
Linux文件系统概念
- 操作系统中负责管理和存储文件信息的软件机构成为文件管理系统,简称文件系统
- 文件系统的结构通常叫做目录树结构,从斜杠/根目录开始
- linux号称“万物皆文件”,意味着针对linux的操作,大多数时间是在针对linux文件系统操作
文件系统通用特性
- 几乎主流的文件系统都是从/根目录开始的,linux也不例外,而windows文件系统会以盘符来区分不同的文件系统
- 目录树中节点分为两个种类:目录(directory)、文件(file)
- 从根目录开始,路径具有唯一性
- 只有在目录下才可以继续创建下一级目录,换句话说目录树到文件终止蔓延
易混概念
- 当前路径:也叫当前工作目录,当下用户所属的位置
- 相对路径:相对当前工作路径开始的路径,会随当前路径变化而变化
- 绝对路径:不管工作目录在哪,绝对路径都是从/根目录开始,唯一不重复。
特殊符号
- . 目录或者文件名字以.开始表示的是隐藏的文件,如果路径以.开始表示当前路径
- … 当前目录的上一级目录
- ~ 当前用户的home目录,比如root用户home目录是/root
- / 根目录
- 进入当前目录下的a ./a
- 进入根目录下的a /a
- 进入当前目录上一级下的a …/a
- 进入当前操作用户home目录下的a ~/a
- 进入当前目录下的a(a是隐藏的) .a
Linux常用的操作命令
概述
- 命令属于死东西,多用多会,不用就忘
- tab键可以实现自动补全和提示,可以合理使用
- history命令可以显示历史执行记录,或者使用方向键来切换前后执行的命令
显示目录内容
- ls(list files)命令:用于显示指定工作目录下的内容(列出目前工作目录所含的文件及子目录)。
-a 显示所有文件及目录(.开头的隐藏文件也会列出)
-l 除文件名称之外,亦将文件形态、权限、拥有者、文件大小等咨询详细列出 注意ls -l = ll
切换目录
- cd(change directory):用于切换当前工作目录。切换的路径可为绝对路径或相对路径。若路径省略,则变换至使用者的home目录。
~ 也表示为home目录的意思
. 则是表示目前所在的目录
… 则表示目前目录位置的上一层目录
创建、删除
- mkdir(make directory)命令:用于创建目录
-p 确保父目录名称存在,不存在的就建一个 - touch命令:创建一个空文件,无任何内容
- rm(remove)命令:用于删除一个文件或者目录
-f 强制直接删除,无需用户确认
-r 将目录及以下所有递归逐一删除
复制、移动
- cp(copy file)命令:用于复制文件或目录。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件 - mv(move file)命令:用来为文件或目录改名、或将文件或目录移入其他位置。
文件内容查看
- cat(concatenate)命令:用于连接文件并打印到标准输出设备如console控制台上。适合小文件内容查看
- more命令:类似cat,不过会以一页一页的形式显示,更方便读者逐页阅读,翻页结束自动退出。适合大文件查看。按space键翻下一页,按b往回(back)上一页。
- tail命令:用于查看文件的结尾部分的内容
-n 用于显示行数,默认为10,即显示10行的内容。
-f 用于实时显示文件动态追加的内容。会把文件里的最尾部分的内容显示在屏幕上,并且不断刷新,只要文件有更新,就可以看到最新的文件内容。
其他
- 管道命令:将前一个命令执行的结果作为内容交给下一个命令处理。可以形成多级管道操作。
命令1|命令2 可以将命令1的结果通过命令2做进一步处理 - echo命令:用于内容的数据,将内容输出到console控制台上。
echo string -
输出重定向(覆盖)命令
command > file 执行command然后将输出的内容存入file,file内已经存在的内容将被重新覆盖替代 -
输出重定向(追加)命令
command>>file 执行command然后输出的内容存入file,新内容追加在文件末尾
解压缩命令
-
tar(tape archive)命令:常用于备份文件。是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。
-c 或–create建立新的备份文件
-x 或 --extract或–get从备份文件中还原文件
-v 或–verbose显示指令执行过程
-f<备份文件>或–file=<备份文件>指定备份文件 -
打包压缩、解包解压缩
在打包备份或者解包的过程中,可以通过指定压缩算法,对打包的文件进行压缩,解压的时候也需要指定相应的算法。
-z或–gzip或–ungzip 通过gzip指令处理备份文件
最重要的搭配:tar -zxvf xxxx.tar.gz
时间、日期查看
- date命令:用来显示或设定系统的日期,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记。
- cal(calendar)命令:用于显示当前或者指定日期的公历。
内存、磁盘使用率查看
- free命令:用于显示内存状态。会显示内存使用的情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区。
- df(英文全拼:disk free)命令:用于显示目前在Linux系统上的文件系统磁盘使用情况统计。
进程查看
- ps(英文全拼:process status)命令:用于显示当前进程状态,类似于windows的任务管理器。
- jsp命令:这是JDK自带的命令,专门用于查看本机运行java进程的情况。