file命令极其用法
Windows: PE
Linux: ELF
文件系统:
rootfs:根文件系统
FHS: Linux
/boot:系统启动相关的文件,如内核、 initrd,以及grub(bootloader)
/dev:设备文件
设备文件:
块设备:随机访问,数据块
字符设备:线性访问,按字符为单位
设备号:主设备号(major)和此设备号(minor)
/etc:配置文件
/home:用户的家目录,每一个用户的家目录通常默认为/home/USERNAME/
/root:管理员的家目录
/lib:库文件
/lib/modules:内核模块文件
静态库,.a
动态库,.dll,.so(shared object)
/media:挂载点目录,移动设备
/mnt:挂载点目录,额外的临时文件
/opt:可选目录,第三方程序的安装目录
/proc:伪文件系统,内核映射文件
/sys:伪文件系统,跟硬件设备相关的属性映射
/tmp:临时文件, /var/tmp/
/var:可变化的文件
/bin: binary可执行文件,用户命令
/sbin:管理命令
/usr: universal, shared, read-only存放全局的共享的只读文件
/usr/bin
/usr/sbin
/usr/lib
/usr/local:
/usr/local/bin
/usr/local/sbin
/usr/local/lib
命名规则:
1、长度不能超过255个字符;
2、不能使用/当文件名;
3、严格区分大小写
相对路径:
绝对路径:
文件管理
目录管理
ls
cd
pwd
mkdir:创建空目录
-p:创建不存在的文件夹的父目录
-v: verbose
/root/x/y/z
/mnt/test/x/m,y
mkdir -pv /mnt/test/x/m/mnt/test/y
mkdir -pv/mnt/test/{x/m,y}
~USERNAME:展开
{}展开
命令行展开:mkdir -pv /mnt/test/{x/m,y}
/mnt/test2/
a_b, a_c, d_b, d_c
mkdir -pv/mnt/test2/{a,d}_{b,c}
tree [/root]:查看文件夹结构
删除目录: rmdir
-p:
文件创建和删除:
# touch
-a
-m
-t
-c
# stat FILENAME查看文件时间状态
创建文件,可以使用文件编辑器
ASCII:
128个字符:
二进制:
ASCII码表:
0000 1001: t
标准:
nano
删除文件: rm
-i: interactive交互删除
-f: force强制,不提示
-r -R:递归删除
rm -rf /
创建目录
(1)在/mnt下创建boot和sysroot
(2)在/mnt/boot下创建grub
(3)在/mnt/sysroot下创建proc, sys, bin, sbin, lib, usr, var, etc, dev,home, root, tmp
a)在/mnt/sysroot/usr下创建bin, sbin, lib
b)在/mnt/sysroot/lib下创建modules
c)在/mnt/sysroot/var下创建run, log, lock
d)在/mnt/sysroot/etc下创建init.d
复制和移动文件
cp: copy
cp SRC DEST
-r
-i
-f
-p:保留之前文件的属性
-a:归档复制,常用于备份
cp file1 file2 file3
一个文件到一个文件
多个文件到一个目录
cp/etc/{passwd,inittab,rc.d/rc.sysinit} /tmp/
mv: move移动文件
mv SRC DEST
mv -t DEST SRC:使用-t选项
install
-d DIRECTORY ...:创建目录
SRC DEST
install -t DIRECTORYSRC...