1.对Linux系统的认识

linux指的是操作系统中的内核

我们所说的操作系统是linux的内核+GNU组织的软件  GNU/linux

内核即管理整个操作系统的核心,犹如人的大脑发挥着至关重要的作用

linux是一个倒树结构

linux之中的所有东西都是文件的形式

这些文件都存在于系统顶级目录 "/“ 也就是根目录(见下图)

linux 将本地文件 添加到 docker 添加目录_linux

根目录下的二级目录对应的功能如下:

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

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

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

/dev              设备管理文件

/etc               大多数系统管理文件

/home           普通用户的家目录

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

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

/media          系统临时设备挂载点                                                                                 

/mnt              系统临时设备挂载点

/run               系统临时设备挂载点

/opt               第三方软件安装位置

/proc             系统信息

/root              超级用户家目录

/srv,/var     系统数据

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

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

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

2.文件的路径

(1)绝对路径

文件在系统中的真正位置,以 "/"开头。  例如:/etc/abrt/abrt.conf

(2)相对路径

文件相对与当前位置的一个简写,其名字不会以"/"开头,名字会自动添加pwd的值。 例如:westos/linux_class1

3.文件的管理

(1)建立文件

touch  file   ## 创建一个名为file的文件,touch的本质是修改文件的时间戳

(2)建立目录

mkdir test ## 创建一个名为test的目录

-p ##上级目录不存在时自动建立

linux 将本地文件 添加到 docker 添加目录_显示文件_02

(3)删除文件或目录

rm -f file ##强行删除文件不提醒  f是force的缩写

rm -rf  目录 ##强行删除目录  -r 表示递归,就是目录本身和里面的所有内容

-rf 和-fr 效果相同

(4)查看文件内容

cat file   ##文件内容查看命令

(5)复制文件或目录

cp file1 file2 ##把file1复制到file2

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

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

cp -r directory direcotry1 ##复制目录

(6)移动文件或目录

mv file directory

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

mv westos/linux  .  ##把westos的linux移动到当前位置,"."表示当前系统所在位置

(7)列出目录或文件的信息

ls ##如果后面没有目标那么默认目标为当前目录

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

linux 将本地文件 添加到 docker 添加目录_显示文件_03

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

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

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

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

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

linux 将本地文件 添加到 docker 添加目录_显示文件_04

(8)文件目录的切换

cd directory ##切换到指定的目录

cd - ##切换到工作目录到之前的目录

cd ~ ##切换到家目录

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

cd .. #切换到上一级目录

linux 将本地文件 添加到 docker 添加目录_显示文件_05

小结: ~ 当前用户的家目录

           ~username 指定用户的家目录

           - 工作目录之前的目录

           .. 上一级目录

.当前目录

(9)其他文件操作

file filename  ##查看文件类型

head             ##显示指定文件的前多少行

head -n 7 passwd     ##显示文件的前7行

tail            ##显示文件的后多少行

tail -n 5 passwd     ##显示文件的最后5行

less            ##分页浏览

wc            ##统计文件的字数,字符数,字节数

wc -l            ##行数

wc -m            ##字符数

wc -c            ##字节数

wc -w            ##字数

linux 将本地文件 添加到 docker 添加目录_linux_06

4.vim方式编辑文件

(1)vim filename ##进入到命令模式,命令模式无法编辑文件

(2)按"i"进入插入模式

linux 将本地文件 添加到 docker 添加目录_linux_07

(3)如果完成编辑按"esc"退出插入模式,

linux 将本地文件 添加到 docker 添加目录_linux_08

(4) 输入":wq"完成编辑并保存退出。

linux 将本地文件 添加到 docker 添加目录_显示文件_09

(5) vim  ##直接执行vim操作 在文件的编写结束之后需要 :wq filename

(6)vim filename 如果文件名字不存在则直接自动新建

(7)vim的退出模式

:q 当用vim打开文件但没有对字符作出任何操作时可直接退出

:q! 当用vim打开文件并对字符作操作,放弃所有操作推出

:wq 保存退出

:wq! 强行保存退出,对超级用户及文件所有人生效

5.正则表达式

*                   ##匹配0到任意字符

?                 ##匹配单个字符

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

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

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

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

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

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

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

例:建立文件然后使用通配符删除

linux 将本地文件 添加到 docker 添加目录_显示文件_10

linux 将本地文件 添加到 docker 添加目录_显示文件_11

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

{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

touch westos{1..3}{a..c}共建立了9个文件

linux 将本地文件 添加到 docker 添加目录_显示文件_12


[ ] 表示存在的

[a-C]           ###aA bB cC

[a-c]           ###aA或者bB或者c

[1-3]           ###1或者2或者3

[145]           ###1或者4或者5

[^abc]|[!abc]   ###除了a并且除了b并且除了c


linux 将本地文件 添加到 docker 添加目录_显示文件_13