1.系统结构
linux文件系统是一个倒树形结构,所有东西包括软件,命令都以文件的形式存在,这些文件的顶级目录为根目录“/”,/目录以下为二级目录这些目录都是系统装机时系统自动建立的,二级目录的作用如下所示:
/bin ##二进制可执行文件也就是系统命令
/sbin ##系统管理命令存放位置
/boot ##启动分区,负责系统启动
/dev ##设备管理文件
/etc ##大多数系统管理文件
/home ##普通用户的家目录
/lib ##32位系统库文件存放位置
/lib64 ##64位系统库文件存放位置
/media ##系统临时设备挂载点
/mnt ##系统临时设备挂载点
/run ##系统临时设备挂载点
/opt ##第三方软件安装位置
/proc ##系统信息
/root ##超级用户家目录
/srv,/var ##系统数据
/sys ##系统管理,主要是关于内核的
/tmp ##系统临时文件存放位置
/usr ##系统用户相关信息数据及用户自定义软件存放位置
2.文件寻址
绝对路径:文件在系统的真实位置,文件名字以根目录“/”开头(通常以“/”写起的文件名或目录名都为绝对路径)
相对路径:文件相对与当前所在位置的一个名字的简写,这个名字不会以/开头,而且名字会自动添加pwd显示的值(pwd为查看当前所在路径的命令)
3.文件管理
1)touch 建立文件或修改文件时间戳(通常用来创建文件)
touch <filename> ##创建文件
2)mkdir 建立目录
mkdir <directory> [-p] ##创建目录,-p上层目录没有时自动创建(一次创建多层目录)
3)rm (rmdir) 删除目录或文件
rm -f ##强行删除不提示(否则会显示一条确认信息问你是否确定删除)
-r ##删除目录
-p ##删除多层目录
rmdir ##用来删除空目录(比较安全)
4)cat|head|tail 查看文件内容
cat ##从第一行开始显示文件内容
head -n 5 ##只看前5行
tail -n 5 ##只看后5行
more ##一页一页的显示文件内容
nl ##显示的时候顺便输出行号
5)vim 文本方式编辑文件
vim <filename> ##进入到命令模式
**命令模式不能编辑文件,如果要编辑文件要进入插入模式,按"i"进入插入模式
**如果完成编辑,按”esc“键退出插入模式,输入“:wq” 保存退出
**如果文件名字不存在,会自动创建
**若vim 没有操作对象直接打开,编辑文件后要 “:wq <filename>”
6)cd 切换工作目录
cd <directory> ##切换工作目录到指定目录
cd - ##切换工作目录到之前所在目录
cd ~ ##切换到当前用户的家目录
cd ~<usernmae> ##切换到指定用户家目录
cd .. ##进入到当前目录的上级目录
7)ls 列出目录或文件信息
ls ##如果后面没有目标那么默认目标为当前目录
ls <direcory|filename> ##列出文件或目录内容
ls -d <direcotry> ##列出目录本身
ls -l <filename|dorectory>##列出文件或目录里面内容的详细属性
ls -ld <directory> ##列出目录本身属性
ls -a ##显示目录中的所有内容,包括以"."开头的隐藏文件
ls -R ##递归显示目录中的内容
8)cp 文件复制(实质上是新建文件的过程)
cp file file1 file2 ... directory ##把file file1 file2 复制到 directory中
cp file test ##建立test文件模板为file
cp -r directory direcotry1 ##复制目录
9)mv 动或重命名 (相同磁盘的mv是重命名,不同磁盘的mv是复制删除过程)
mv file file1 direcotry ##移动file file1到directory中
mv <存在文件> <不存在文件> ##重命名文件
mv westos/linux . ##把westos中的linux移动到当前目录 "."代表当前目录
4.正则表达式
* ##匹配0到任意字符
? ##匹配单个字符
[[:alpha:]] ##匹配单个字母
[[:lower:]] ##匹配单个小写字母
[[:upper:]] ##匹配单个大写字母
[[:digit:]] ##匹配单个数字
[[:alnum:]] ##匹配单个数字或字母
[[:punct:]] ##匹配单个符号
[[:space:]] ##匹配单个空格
{}表示不存在的或者存在的
{1..9} ##1-9
{a..f} ##a-f
{1,3,5} ##135
{a,c,e} ##a c e
{1..3}{a..c} ##1a 2a 3a 2a 2b 2c 3a 3b 3c
[]表示存在的
[a-C] ##a或A或 b或B或 c或C
[a-c] ##a或A或者b或B或者c
[1-3] ##1或者2或者3
[145] ##1或者4或者5
[^abc]|[!abc] ##除了a并且除了b并且除了c
~ ##当前用户家目录
~username ##指定的用户家目录
~+ ##当前目录
~- ##当前目录之前所在目录(适用于所有环境)
. ##当前目录
.. ##当前目录的上一级