一、文件系统
1、根文件系统
rootfs:根文件系统
2、/boot :系统启动相关的文件,如内核、initd,以及grub (BootLoader)
3、/dev :设备文件
设备文件:
块设备:随机访问的设备,数据块单位。
字符设备:线性访问的设备,按字符为单位
设备号:主设备号(major)和次设备号(minor)
4、 /etc:配置文件
5、/home:用户的家目录,每一个用户的家目录通常默认为/home/USERNAME
6、/root:管理员的家目录
7、/lib:库文件
静态库:.a
动态库:.dll .so (shared object)
/lib/modules:内核模块文件
8、 /media:挂载点目录,挂载移动设备
/mnt:挂载点目录,挂载额外的临时文件系统。
9、其他
/opt:可选目录,第三方程序的安装目录
proc:伪文件系统,内核映射文件
/sys:伪文件系统,跟硬件设备相关的属性映射
/tmp:临时文件 ,/var/tmp
/var:可变化的文件
/bin: 可执行文件,用户命令
/sbin:管理命令
10、删除命令:rm
删除文件:rm
-i:
-f:强行删除
-r:删除目录及目录下所有的文件
rm -rf / :删除目录及目录下所有的文件 (此命令不要执行)
11、 移动文件:move
mv SRC(源) DEST(目标)
mv -t DEST SRC
二、文件管理
1、查看文本
常用的查看文本命令有:cat tac more less head tail
(1)cat: 连接并显示
-n :显示行标号
-E:每行显示结尾符号
(2)分屏显示:more 、less
more:支持向后翻
less:支持 前翻、后翻,不会自动退出,按q退出。
head:查看前n行
tail:-n 查看后n行
-f :查看文件尾部,不退出 ,等待后续追加至此文件的新内容。
2、文本处理命令
常用的文本处理命令有:cut join sed awk
(1) 文本排序:sort
-n:数值排序
-r:降序
-t:字段分隔符
-k:以哪个字段为关键字进行排序
-u:排序后相同的行只显示一次
-f:排序时忽略字符大小写
(2) uniq:
-c : 显示文本中重复的次数
-d:只显示重复的行
(3) 文本统计:wc (word count)
-c:只显示字节数
-l:只显示行数
-w:只显示字符数
-L:最后一行包含多少个字符
(4) 字符处理命令:tr -转换或删除字符
tr [OPTION] ... SET1 [SET2]
tr ab AB
tr -d :删除出现在字符集中的所有字符
三、bash及其特性
(1) shell :外壳
GUI:Gnome,KDE ,Xfce
GLI :sh,csh ,ksh ,bash
(2) bash的特性
1.命令历史;2.管道、重定向;3.命令别名;4.命令行编辑 ();5. 命令行展开;6.文件名通配;7.变量;8.编程;
(3)命令行编辑:
Ctrl+a:跳转到命令行首
Ctrl+e:跳转到命令行尾
Ctrl+u:删除光标至命令行首的内容
Ctrl+k:删除光标至命令行尾的内容
Ctrl+ 左右箭头 :向左右跳转一个词
Ctrl+l :清屏
(4)命令历史:history
查看命令历史:history
history -c :清空历史命令
history -d 10 :删除第10条命令
history -w:保存命令历史至历史文件中
(5)命令历史使用技巧
!n :执行命令历史中第N条命令
!n:执行命令历史中倒数第N条命令
!!:执行命令历史中上一条命令
!string:执行命令历史中最近一个以指定字符串开头的命令
!$:引用前一个命令的最后一个参数
四、命令别名
alias CMDALIAS=COMMAND [options] [arguments]
在shell中定义的别名仅在当前shell生命周期中有效,别名的有效范围为当前shell进程。
五、命令替换:
命令替换:$(COMMAND) , 'COMMAND'
把命令中某个子命令替换为其执行结果的过程
六、文件名通配
文件名通配,globbing
* :任意长度的任意字符
? : 任意单个字符
[]: 匹配指定范围内的任意单个字符
[^] :匹配指定范围之外的任意字符