徐照宇 2022.11.24
1.FHS(Filesystem Hierarchy Standard)文件系统层级标准
文件系统:对于一个存储设备(或者分区)明确存放文件的方法和数据结构类型。
/ 系统所有数据文件
usr:核心资源目录
bin :所有用户可以执行的二进制文件
sbin:系统中只有管理员可以执行的命令文件
lib:32位相关的库文件
lib64:64位相关的库文件
root:管理员的家目录
home:所有普通用户的主路径
boot:系统引导文件
dev:主机的设备文件
etc:所有配置文件(软件程序初始化的参数文件)
media:挂载点目录(永久链接)
mnt:挂载点目录(临时链接)
opt:可选目录
proc(process):内核进程文件路径
sys:设备驱动程序路径
run:应用层进程文件路径
srv(service):服务程序的数据文件
var:动态可变化的数据文件
tmp:临时文件目录
2.文件相关的操作命令
文件命令限制:
1.同一路径下不能有两个相同的文件名
2.严格区分大小写
3.文件命令不能以/字符命名
4.文件命名字符不能超过255个字符
stat filename文件详细属性信息
time:modify:文件内容
change:修改源数据(位置等)
touch filename
通过touch创建多个文件:
1.touch a,b,c
2.touch{1,2,3,4}
4.touch{a..b}
mkdir DIRNAME
mkdir d1 d2 d3
mkdir {d1,d2,d3}
mkdir d{1..3}
mkdir -p:父目录 多级目录
mkdir -v:详细信息
tree DIRNAME 树状显示目录结构
rm 删除文件
-r 递归
-f force 强制
* 匹配任意长度任意字符
eg:rm -rf/root/1*:删除所有以1开头的文件
mv 移动文件
mv 源文件 目标路径(目录)
eg:
touch/root/file
mv /root/file /目标路径
移动并改名
mv /root/file /newfile
(1)目录下不存在newfile,将/root/file文件移动到/目录下并改名newfile
(2)目录下存在newfile,将/root。file文件移动到/目录下并改名newfiile,提示是否覆盖newfile目录文件,将/root/file文件移动到/newfile目录下
重命名
mv /root/file /root/newfile
cp复制文件
cp 源文件... 目标路径(目录) 复制文本文件
cp -r 源文件... 目标路径(目录) 复制目录文件
查看文本文件内容的6个命令
/etc/passwd 默认配置文件
(文件内容较少)cat -n:打印并编号
tac:
more:分页显示,最终将所有内容打印到终端
(文件内容较多)less;分页显示,打开阅读方式
空格切换下一页,b切换上一页,q退出
/关键词 快速匹配关键词 n切换上一个关键词
head:默认查看一个文件的前十行
head -n 5/etc/passwd==head -5/etc/passwd
tall:默认查看一个文件的后十行
tall-2/etc/passwd
wget下载文件
-r 通过链接下载目录文件
-O 把链接文件下载到指定路径并改名
-P 把链接文件下载到指定路径下
-c 断点续传
3.ctrl+c :结束程序
4.作业
1、#创建目录(尝试以下通过一条命令实现)
在/mnt下创建boot和sysroot目
在/mnt/boot下创建grub目录
在/mnt/sysroot下创建proc,sys,bin,sbin,lib,usr,var,etc,dev,home,root,tmp
在/mnt/sysroot/usr下创建bin,sbin,lib
在/mnt/sysroot/lib下创建modules
在/mnt/sysroot/var下创建run,log,lock
在/mnt/sysroot/etc下创建init.d
2.如何一次性在/test目录创建以abc表示的100个文件,例如abc1,abc2,abc3,…abc100
3.复制/mnt/boot目录文件到/test并改名为/boot.bak。
4.复制/test所有有9字符命名的文件到/pub下。
5.移动/test所有有1字符命名的文件到/pub目录下。
1.不会
2.#touch /test/{abc1…abc100}
3.#cp -r /mnt/boot /test/boot.bak
4.#cp -r/test/1 /pub
5.#mv -r/test/1 /pub