#############################

########## unit 2 ###########

#############################


###############################

###### 一.linux系统结构 #######

###############################

内核:系统的核心,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。

shell:linux系统的用户界面,是一个应用程序,提供了用户与内核进行交互操作的接口。实际上是一个命令解释器,它解释由用户输入的

命令并且把他们送到内核。

系统:内核+shell+文件系统=linux操作系统


linux是一个倒数结构

linux中一切皆文件

这些文件都在系统顶级目录“/”中,/就是根目录

/目录以下为二级目录,这些目录都是系统装机时系统自动建立的


二级目录的作用:

/bin      ##二进制可执行文件也就是系统命令

/sbin     ##系统管理命令存放位置

/boot     ##启动分区,负责系统启动

/dev      ##设备管理文件

/etc      ##大多数系统管理配置文件

/home     ##普通用户的家目录

/lib      ##32位系统库文件存放位置

/lib64    ##64位系统库文件存放位置

/media    ##系统临时设备挂载点

/mnt      ##系统临时设备挂载点

/run      ##系统临时设备挂载点

/opt      ##第三方软件安装位置

/proc     ##系统信息

/srv,/var     ##系统数据

/sys      ##系统管理,主要是关于内核的

/tmp      ##系统临时文件存放位置

/usr      ##系统用户相关信息数据以及用户自定义软件存放位置



###################################

########## 二.文件的寻址 ##########

###################################


绝对路径

文件在系统的真实位置,文件名字以“/”开头

相对路径

文件相对路径是当前所在位置的一个名字的简写,这个名字不会以“/”开头,而且名字会自动添加pwd显示的值




####################################

########### 三.文件的管理 ##########

####################################


######1.touch建立文件或修改文件时间戳######

touch file             ##创建文件

touch一般用于创建文件,但他的真正用途是改变文件时间戳

Atime:access time上次访问文件的时间

Mtime:modification time文件内容最近一次发生改变的时间

Ctime:change time文件的inode改变的时间(包括修改文件内容,修改文件所有者,链接改变时)

stat 文件名            ###显示文件的系统详细信息(包括时间戳等等)


######2.mkdir建立目录 #######

mkdir   directory     ##创建目录

        -p            ##上级目录不存在时自动建立(即第归建立目录)


#####3.rm删除目录或文件#####

rm  -f     ##强行删除不提示

    -r     ##删除目录


####4.cat|head|tail 查看文件内容####

cat 文件路径           ##查看文件内容

head -n 5 文件路径     ##查看文件内容的前5行

tail -n 5 文件路径     ##查看文件内容的后5行


#####5.vim文本方式编辑文件#####

命令模式不能编辑文件,如果要编辑文件要进入插入模式

按“i”进入插入模式

如果完成编辑,按“esc”退出插入模式,输入“:wq”保存退出


vim filename 如果文件名字不存在,则会自动创建


vim 没有操作对象直接打开,编辑完文件后要 :wq filename


#####6.cd 切换工作目录#####

cd directory     ##切换工作目录到指定目录

cd -             ##切换到上一个工作目录

cd ~             ##切换到当前用户的家目录

cd ~username     ##切换到指定用户的家目录

cd ..            ##进入到当前目录的上级目录


#####7.ls列出目录或文件信息#####(ls的实际含义为list,但没有list这个命令)

ls                          ##如果后面不跟目标,则默认目标为当前目录

ls directory|filename       ##列出文件或目录内容

ls -d directory             ##列出目录本身

ls -l filename|directory    ##列出文件或目录里面内容的属性

ls -ld directory            ##列出目录本身属性

ls -a                       ##显示目录中的所有内容,包括以“.”开头的隐藏文件

ls -R                       ##第归显示目录中的内容


######8.cp 文件复制######

cp是新建文件的过程

cp file1 file2 file3 ... directory     ###把file1 file2 file3 复制到directory中

cp file test                           ###建立test文件模板为file

cp -r directory directory1             ###复制目录


#####9.mv 移动或重命名#####

mv file1 file2 directory               ##移动file1 file2到directory中

mv 存在文件 不存在文件                 ##重命名文件

mv westos/linux .                      ##把westos中的linux移动到当前目录 .代表当前目录



#########################

######四.正则表达式######

#########################

*                   ##匹配0到任意字符

?                  ##匹配但个字符

[[:alpha:]]         ##匹配单个字母

[[:lower:]]         ##匹配单个小写字母

[[:upper:]]         ##匹配单个大写字母

[[:digit:]]         ##匹配单个数字

[[:alnum:]]         ##匹配单个字母或数字

[[:punct:]]         ##匹配单个符号

[[:space:]]         ##匹配单个空格


{}表示不存在的或者存在的

{1..9}              ##1-9

{a..f}              ##a-f

{1,3,5}             ##1 3 5

{a,c,e}             ##a c e

{1..3}{a..c}        ##1a 1b 1c 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

[^123]|[!123]      ##除了1 2 3


~                  ##当前用户家目录

~username          ##指定用户家目录

~+                 ##当前目录

~-                 ##当前目录之前所在的目录


.                  ##当前目录

..                 ##当前目录的上一级