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