-
文件系统
Linux本质上就是一个文件系统,Linux文件系统是操作系统组织、存放、保存数据的一种手段。整体采用层级式的倒树状目录结构。
倒树状结构中的目录作用
/
/:根目录
/bin:主要存放系统的普通指令
/boot:主要存放系统的引导程序
/dev:存放硬件设备对应的文件
/etc:存放系统和应用程序的配置文件
/home:家目录,存放当前系统下所有用户对应的目录
/lib:存放系统和应用程序依赖的库文件。有系统库,也有第三方库
/proc:存放系统运行时的运行信息
/usr:是软件的默认安装路径
/var:存放缓存,备份文件
/cdrom:光驱
/mnt:用于系统文件系统的挂载目录
/sbin:用于存放特权指令
路径的概念
- 绝对路径:以根目录(/)为参考点描述的路径,称之为绝对路径。
举例:
cd /home/ldy
相对路径:以当前目录(./)为参考点描述的路径,称之为相对路径。
举例:
cd home //绝对路径
cd ./ldy //相对路径,必须是当前路径才可以切换,不能任意切换
cd ldy //相对路径,另一种写法
Linux文件系统类型
d:目录(文件夹)
-:文件
l:快捷方式
c:字符设备文件
b:块设备文件(大容量磁盘-存储设备)
s:表示套接字文件
p:表示管道文件
通配符
*:匹配任意一个或多个字符
?:匹配任意单个字符
[..]:匹配[ ]范围中的任意一个字符
目录操作
指令
- pwd:查看当前目录的路径(绝对路径)
- ls:显示指定路径(默认当前路径)下的文件或目录
- -a:显示所有(包含隐藏文件)文件或目录
- -l:显示所有的文件或目录的详细信息列表
- -r:将文件以相反次序显示(原定依照英文字母次序)
- -t:将文件以创建时间的先后次序显示
说明:多个参数可同时出现
- cd:切换目录
格式:cd 目录(文件夹目录)
- cd ~:切换到当前家目录下的用户目录下
- cd -:返回上一次的工作目录
- cd /:切换到根目录
- cd ./:切换到当前目录
- cd ../:回退到上一级目录
- cd ../..:回退到上上级目录
- mkdir:创建空文件夹(目录)
-p:可以创建多层文件夹
- touch:创建文件
- rmdir:删除空目录,仅限于删除空目录
- rm:删除文件(递归删除时可删除文件夹)
- -i:给出交互提示,可以输入yes或no
- -f:强制删除,不提示
- -r:递归删除
- cp:复制文件或文件夹(复制+粘贴)
- -r:递归复制:复制文件夹中的所有
- -i:如果目的地址下已经存在同名目录/文件,会交互提示
- mv:移动文件(重命名文件)
文件操作
- cat:查看文件内容
语法:cat [选项] 文件路径
选项:-n:显示行号
- more:分页查看文件内容
语法:more 文件路径
- 空格键:向下翻一页
- 回车键:向下翻一行
- Q键:退出
- less:分页查看文件内容
语法:less [选项] 文件路径
- -M:显示当前行范围
- 空格键:向下翻一页
- B键:向上翻一页
- Q键:退出
- 方向键上/下:向上/向下翻一页
- head:查看文件的头部内容(默认10行)
语法:head [选项] 文件路径
-n:从头开始显示n行内容(识别换行符)
- tail:查看文件的尾部内容(默认10行)
语法:tail [选项] 文件路径
-n:从尾部开始显示n行(默认10行)
- grep:搜索文件内容,在文件中查找指定的字符串
语法:grep [选项] 要查找的字符串 文件路径
- -n:显示行号
- -c:统计搜索到多少行
- -i:忽略大小写搜索
- find:查找文件或目录(递归查找),从硬盘查找,准确度高,性能低
语法:find 检索路径 [选项] 要查找的文件名称
- -name:按照文件名查找(全匹配)
- -iname:按文件名查找,忽略大小写
- -size:按文件大小查找。例:find ./ -size +3M 查询当前路径下,所有大于3M的文件,大于3M(+3M),小于3M(-3M),这里1代表512个字节(B),通过“+”和“-”控制大于和小于。
- -type:按文件类型查找
- locate:快速查找文件或目录,从数据库查找,准确性低,性能高。该指令是从文件系统的数据库中查找,缺点是新创建的文件在数据库中没有建立索引,用该指令找不到
语法:locate [选项] 文件名/目录名
- -c:统计
- -i:忽略大小写
注意:默认情况下updatedb每天更新一次,我们可以手动更新。指令:updatedb
- which:快速查找指令 cp,mv.....
格式:which 指令名称
- echo:将指定字符串输出到设备上
语法:echo 输出的字符串
举例:输出到文件
追加到文件
- |(管道):将前一个指令执行结果作为后一个指令执行的条件
案例:对查找指令的结果进一步过滤