day03
1. FHS文件系统层级标准(Filesystem Hierarchy Standard)
文件系统:存储设备指定存放数据文件的方法和数据结构。
/ 所有数据文件
bin 所有用户都可以执行的命令文件
sbin 只有管理员可以执行的命令文件
lib32 数据的库文件
lib64 64数据的库文件
usr 核心资源文件
root root(管理员)用户家目录
home 所有普通用户的主路径
boot 系统加载引导相关所有文件
dev 设备目录文件
etc 系统中所有的配置文件(软件程序初始化参数文件)
opt 自定义软件的安装路径
proc 系统内核相关的进程信息
sys 硬件驱动程序
run 应用程序文件的进程
srv 服务程序文件的路径
tmp 临时目录
var 动态可变化的数据文件路径
2.(-/d)文件相关的操作命令
(1)同一路径下不能有两个相同的文件名
(2)严格区分大小写
(3)文件命令不能以/字符命令
(4)文件命名字符不能超过255字符
touch 创建文本文件
当一个路径下不存在该文件,通过touch可以创建一个普通文本文件。
当一个路径下存在该文件,通过touch可以更改时间信息。
stat FILENAME 文件详细属性信息
touch FILENAME…
touch a b c
touch {1,2,3,4}
touch {1..10}
eg:
touch /root/a b c
touch /root/{1..3} == touch /root/1 /root/2 /root/3
mkdir DIRNAME…
-p父目录 创建多级目录
-v 详细信息
mkdir d1 d2 d3
mkdir dd{1..3}
eg:
mkdir {1}
mkdir -pv /root/{1..3}/abc
tree树状结构显示目录文件
rm 删除文件
-r 递归
-f force 强制
rm FILENAME 删除文本文件
rm -r NAME 删除目录文件
rm -rf FILE 强制删除一个文件
*任意长度的任意字符
rm -rf a* 删除开始以a字符命名的所有文件
rm -rf /*
mv 移动文件
mv 源文件名 目标路径(目录)
#touch /root/file
#mv /root/file /
#mv /root/file /newfile
(1)当/newfile不存在,将file移动到/目录并改名为newfile
(2)当/newfile存在,如果是目录文件,表示file移动到/newfile目录下;如果是文本文件,表示file移动到/目录改名为newfile
cp 复制文件
cp 源文件名 目标路径
-r 递归
#touch /root/file
#cp /root/file /
#cp /root/file /newfile
(1)当/newfile不存在,将file复制到/目录并改名为newfile
(2)当/newfile存在,如果是目录文件,表示file复制到/newfile目录下;如果是文本文件,表示file复制到/目录改名为newfile
#mkdir /root/test
#cp -r /root/test / 复制目录文件
查看文本文件内容的6个命令
cat -n FILENAME
tac FILENAME
more FILENAME 分屏显示文件内容,最后将内容输出到终端
less FILENAME 分屏显示文件内容,打开文件阅读 退出q 换页:空格 切换下一页 b 切换上一页/关键词匹配 关键词 n切换下一个关键词 N切换上一个关键词 ?关键词
head FILENAME 查看文件前十行
head -n 5 FILENAME== head -5 FILENAME 查看文件前5行
tail FILENAME 查看文件后10行
tail -n 5 FILENAME== tail -5 FILENAME 查看文件后5行
wget下载文件
[root@localhost ~]# wget https://down.qq.com/qqweb/LinuxQQ/linuxqq_2.0.0-b2-1089_x86_64.rpm
-O 将链接文件下载到对应路径进行改名
-P 将链接文件下载到对应路径
-c 实现断点续传
-r 下载一个目录文件
作业题:
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
#mkdir -pv /mnt/{sysroot/{proc,sys,bin,sbin,lib/modules,usr/{bin,sbin,lib},var/{run,log,lock},etc/init,dev,home,root,tmp},boot/grub}
2.如何一次性在/test目录创建以abc表示的100个文件,例如abc1,abc2,abc3,…abc100
#mkdir /test
#touch /test/abc{1…100}
3.复制/mnt/boot目录文件到/test并改名为/boot.bak。
法(1)#cp -r /mnt/boot /test/boot.bak
法(2)#cp -r /mnt/boot /test
#mv /test/boot /test/boot.bak
4.复制/test所有有9字符命名的文件到/pub下。
#mkdir /pub
#cp -r /test/*9* /pub
5.移动/test所有有1字符命名的文件到/pub目录下。
#mv /test/*1* /pub