重点
1.FHS(Filesystem Hierarchy Standard)文件系统层级标准
文件系统:对于一个存储设备(或者分区)明确存放文件的方法和数据结构类型。
/ 系统所有数据文件
bin 所有用户可以执行的二进制文件
sbin 系统中只有管理员可以执行的命令文件
lib 32位相关的库文件
lin64 64位相关的库文件
root 管理员家目录
home 普通用户的主路径
boot 系统引导文件
dev 主机中的设备文件
etc 所有配置文件(软件程序初始化的参数文件)
media 挂载点目录(永久链接)
mnt 挂载点目录(暂时链接)
opt 可选目录
proc 内核进程文件路径
sys 程序驱动程序路径
run 应用层进程文件路径
srv 服务程序的数据文件
var 动态可变化的数据文件 log mail
tmp 临时文件目录
文件名限制:
1.同一路径下不能有两个相同的文件名
2.严格区分大小写
3.文件命名不能以/字符命令
4.文件命名字符不能超过255字符
stat FILENAME 文件详细属性信息
touch FILENAME...
注:当一个路径下不存在对应文件可以通过touch创建文本文件,如果存在会更改文件时间
#touch a b c #touch {1,23,4} #touch {a..b} 例:#touch /root/a b c #touch /root/{a..c}
mkdir DIENAME...
#mkdir d1 d2 d3 #mkdir {d1,d2,d3} #mkdir d{1..3} #mkdir -p 父目录 多级目录 #mkdir -pv /1/2/3/4
tree DIRNAME 树状显示目录结构
rm 删除文件
-r 递归 -f force强制 * 任意长度的任意字符 rm FILENAME rm -r FILE.. rm -rf /root/1* rm -rf/root/*
mv 移动文件
#mv 源文件 目标路径(目录) #touch /root/file #mv /root/file / #touch /root/{a..c} #mv /root/{a..c} / == mv /root/a /root/b /root/c / 移动并改名 (1)/目录下不存在newfile,将/root/file文件移动到/目录下并改名为newfile (2)/目录下存在newfile,newfile是文本文件,将/root/file文件移动到/目录下并改名为newfile,提示是否覆盖 newfile是目录文件,将/root/file文件移动到/newfile目录下 重命名 #mv /root/file /root/newfile
cp复制文件
#cp 源文件... 目标路径(目录) 复制文本文件 #cp -r 源文件... 目标路径(目录) 复刻文件目录
查看文本文件内容的6个命令
/etc/passwd 默认配置文件
cat -n
tac
more 分页显示,最后把内容显示到终端
less 分页显示,打开阅读方式
空格键 下一页 b 上一页
/关键词,快速匹配关键词
n 跳转到下一个关键词 N 跳转到上一个关键词
q / quit 退出
head 默认查看一个文件的前十行
head -n 5/etc/passwd == head -5 /etc/passwd
tail 默认查看一个文件的后十行
tail -2 /etc/passwd
wget下载文件
-r 通过链接下载目录文件 -o 把链接文件下载到指定路径并改名 -p 把链接文件下载到指定路径下 -c 断点续传
1、#创建目录(尝试以下通过一条命令实现)
在/mnt下创建boot和sysroot目
mkdir -p /mnt/{boot,sysroot}
在/mnt/boot下创建grub目录
cd /mnt/boot mkdir grub
在/mnt/sysroot下创建proc,sys,bin,sbin,lib,usr,var,etc,dev,home,root,tmp
cd /mnt/sysroot mkdir {proc,sys,bin,sbin,lib,usr,var,etc,dev,home,root,tmp}
在/mnt/sysroot/usr下创建bin,sbin,lib
cd /mnt/sysroot/usr mkdir {bin,sbin,lib}
在/mnt/sysroot/lib下创建modules
cd / mnt/sysroot/lib mkdir modules
在/mnt/sysroot/var下创建run,log,lock
cd /mnt/sysroot/var mkdir {run,log,lock}
在/mnt/sysroot/etc下创建init.d
cd /mnt/sysroot/etc mkdir init.d
以上为分步骤完成
一条命令:mkdir -p /mnt/boot/grub /nmt/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
touch /root/test/abc{1..100}
3.复制/mnt/boot目录文件到/test并改名为/boot.bak。
cp-r 目录文件 /test/boot.bak
4.复制/test所有有9字符命名的文件到/pub下。
cp 所有9字符命名的文件 /pub
5.移动/test所有有1字符命名的文件到/pub目录下。
mv /test/1字符命名的文件 /pub