一. Linux文件系统:
/boot: 系统启动相关文件,包括kernel,initrd,grub(bootloader)
/dev: 设备文件
块设备:随机访问
字符设备:线性访问。按字符为单位
设备号:主设备(major),次设备号(minor)
/home: 用户家目录。每一个用户的家目录通常默认为/home/USERNAME
/root: 管理员的家目录
/lost+found: 断电时或应急时储存信息的文件
/media: 移动设备挂载点目录 比如将dev目录下的cdrom挂载到本目录开始访问
/mnt: 额外的临时文件系统 挂载点目录
/opt: 可选目录,早先第三方程序的安装目录
/proc: 伪文件系统 kernel映像文件 不启动是为空目录
/sys: 伪文件系统 硬件设备相关的属性映射文件 不启动是为空目录
/tmp: 临时文件 权限为t
/var: 可变化的文件
/etc: 配置文件
/lib: 库文件
静态库 .a 程序中本来就包含库
动态库 .so(sheared object) 在内存中只存入一份 程序依赖库文件
/lib/modules: 内核模块文件
/bin: 可执行文件,用户命令 需/lib 和 /etc 协同
/sbin: 管理命令
/usr: shared, read-only
/usr/local 第三方软件(不影响系统启动)
二. 目录管理
1.查看:
# ls
# pwd
# cd
# tree
2.创建:
# mkdir /root/a/b/c 若没父目录则会报错
文件命名规则:
1.文件名小于255个字符
2.不能使用/当文件名(分隔符)
3.严格区分大小写
-p: parents /root/a/b/c 以此创建目录,
-v: verbose
e.g: mkdir -pv /root/a/b/c /root/a/b/d
=mkdir -pv /root/a/b/{c,d} 命令行展开中的花括号展开
e.g: mkdir -pv /root/test/{a,d}_{b,c}
显示创建a_b,a_c,d_b,d_c
3.删除:
# rmdir 删除空目录
-p: 只可以删除非空的单传的目录
三. 文件管理
1.查看类型:
# file
2.创建:
# touch 用于修改时间戳 timestamps(Access,Modify,Change)
-a 修改时间戳Access,Change
-m 修改时间戳Modify
e.g: touch -m -t 201212212121 a 修改时间戳Modify到2012-12-21 21:21:00
# stat
# nano ASCII
# cat
3.删除:
# rm
-i:交互
e.g:Linux中rm别名为rm -i (使用type rm查看)
使用时命令本身是用\rm
-f: 强制删除,没有提示
-r: 递归删除所有文件或者目录
4.复制和移动文件
# cp copy
只有最后一个是目标,剩下的都是源
一个文件到一个文件/目录 e.g:# cp /etc/passwd /tmp/
多个文件到一个目录 e.g;# cp /etc/passwd /tmp/test
-r,-R 一个目录到一个目录,注意一个目录复制到已存在同名文件且链接不到会报错
-p preserve 保留文件的mode,ownership,timestamps
-d 保持链接属性
-a archive 归档复制,用于备份
e.g:cp /ect/{passwd,inittab,rc.d/rc.sysinit} /tmp
# mv
移动目录不需要-r选项
移动的目标不可以是已存在的同名文件
-t 先指定目标
# install
-d DIRECTORY
-t DIRECTORY SRC...