一、Linux系统结构

1.Linux是一个倒树结构。Linux中所有的东西都是文件。这些文件都在系统的顶级目录中"/","/"是根目录。"/"目录以下为二级目录,这些目录都是系统装机时系统自动建立的。

2.二级目录的作用:

/bin ###二进制可执行文件,也就是系统命令。eg:删除/bin中的date文件,命令行输入date,会显示bash:date:command not found...

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

/boot ###启动分区,负责系统启动。eg:删除/boot/目录,命令行输入reboot重启,系统将无法重启

/dev ###设备管理文件。eg:管理U盘

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

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

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

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

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

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

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

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

/proc ###系统进程消息

/root ###超级用户的家目录

/srv ###系统数据

/var ###系统数据

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

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

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

二、文件的寻址

1.绝对路径:文件在系统的真实位置,文件名字以“/”开头。

eg:[kiosk@foundation2 Desktop]$ ls /home/kiosk/lianxi/ ###/home/kiosk/lianxi/就是一个真实路径

file1  ml2  Music  test

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

eg:[kiosk@foundation2 lianxi]$ pwd ###ml2是一个相对路径(相对当前位置/home/kiosk/lianxi)

/home/kiosk/lianxi

[kiosk@foundation2 lianxi]$ ls ml2 ###在这里,ls ml2和ls /home/kiosk/lianxi/ml2/,两条命令的含义是一样的

lianxi

[kiosk@foundation2 lianxi]$ ls /home/kiosk/lianxi/ml2/

lianxi

三、文件的管理

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

1)touch file ###创建文件

2)stat file ###列出文件的详细信息

3)cat file ###查看文件

eg:[kiosk@foundation2 lianxi]$ touch file1 ###创建文件file1

[kiosk@foundation2 lianxi]$ stat file1 ###列出文件file1的详细信息

文件:"file1"

大小:0         块:0          IO 块:4096   普通空文件

设备:803h/2051d Inode:1079315801  硬链接:1

权限:(0664/-rw-rw-r--)  Uid:( 1000/   kiosk)   Gid:( 1000/   kiosk)

最近访问:2017-03-17 14:18:02.113591317 +0800

最近更改:2017-03-17 14:18:02.113591317 +0800

最近改动:2017-03-17 14:18:02.113591317 +0800

创建时间:-

[kiosk@foundation2 lianxi]$ touch file1 ###修改文件file1的时间戳

[kiosk@foundation2 lianxi]$ stat file1 ###以下时间均发生变动

文件:"file1"

大小:0         块:0          IO 块:4096   普通空文件

设备:803h/2051d Inode:1079315801  硬链接:1

权限:(0664/-rw-rw-r--)  Uid:( 1000/   kiosk)   Gid:( 1000/   kiosk)

最近访问:2017-03-17 14:19:32.620878994 +0800

最近更改:2017-03-17 14:19:32.620878994 +0800

最近改动:2017-03-17 14:19:32.620878994 +0800

创建时间:-

[kiosk@foundation2 lianxi]$ cat file1 ###查看文件file1

[kiosk@foundation2 lianxi]$ stat file1 ###文件file1的最近访问时间改变。

文件:"file1"

大小:0         块:0          IO 块:4096   普通空文件

设备:803h/2051d Inode:1079315801  硬链接:1

权限:(0664/-rw-rw-r--)  Uid:( 1000/   kiosk)   Gid:( 1000/   kiosk)

最近访问:2017-03-17 14:19:52.347942105 +0800

最近更改:2017-03-17 14:19:32.620878994 +0800

最近改动:2017-03-17 14:19:32.620878994 +0800

创建时间:-

2.mkdir建立目录

1)mkdir directory ###创建目录

2)mkdir -p directory ###上级目录不存在时自动建立

eg:[kiosk@foundation2 lianxi]$ ls -a

.  ..  file1

[kiosk@foundation2 lianxi]$ mkdir ml1 ###创建目录ml1

[kiosk@foundation2 lianxi]$ ls -a

.  ..  file1  ml1

[kiosk@foundation2 lianxi]$ mkdir -p ml2/ml3/ ###上级目录ml2不存在,自动建立

[kiosk@foundation2 lianxi]$ ls -R

.:

file1  ml1  ml2

./ml1:

./ml2:

ml3

./ml2/ml3:

3.rm删除目录或文件

1)rm file ###删除文件

1)rm -f file/dictory ###强行删除不提示

2)rm -r directory   ###删除目录

eg:[kiosk@foundation2 lianxi]$ rm file1 ###删除文件file1

[kiosk@foundation2 lianxi]$ ls -a

.  ..  ml1  ml2

[kiosk@foundation2 lianxi]$ rm -r ml1 ###删除目录ml1

[kiosk@foundation2 lianxi]$ ls -R

.:

ml2

./ml2:

ml3

./ml2/ml3:

[kiosk@foundation2 lianxi]$ rm -r ml2/ml3 ###删除目录ml2/ml3

[kiosk@foundation2 lianxi]$ ls -R

.:

ml2

./ml2:

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

1)cat file ###查看文件内容

2)head file ###显示文件前几行

3)tail file ###显示文件后几行

eg:[kiosk@foundation2 lianxi]$ vim file1

[kiosk@foundation2 lianxi]$ cat file1 ###查看文件file1

1

2

3

10

hello

你好

[kiosk@foundation2 lianxi]$ head -n 2 file1 ###显示文件file1前2行

1

2

[kiosk@foundation2 lianxi]$ tail -n 2 file1 ###显示文件file1后2行

hello

你好

5.vim 文本方式编辑文件

命令行输入vim filename,进入到命令模式。命令模式不能编辑文件,编辑文件需进入插入模式。按“i”进入插入模式。如果完成编辑,按“esc”退出插入模式,输入“:wq”保存退出,输入“:!q”强制退出不保存。vim filename如果文件名称不存在,会自动在当前目录创建。vim没有操作对象,会直接打开,编辑文件后要“:wq filename”保存退出。

6.cd 切换工作目录

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

2)cd - ###切换到之前所在工作目录

3)cd ~ ###切换到自己的家目录

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

5)cd .. ###切换到当前目录的上级目录

eg:[kiosk@foundation2 lianxi]$ cd /home/kiosk ###切换到目录/home/kiosk

[kiosk@foundation2 ~]$ cd - ###切换到之前目录/home/kiosk/lianxi

/home/kiosk/lianxi

[kiosk@foundation2 lianxi]$ cd ~ ###切换到家目录

[kiosk@foundation2 ~]$ cd ~root ###普通用户无法切换到超级用户家目录,权限不够

bash: cd: /root: 权限不够

[kiosk@foundation2 ~]$ su -

密码:

上一次登录:五 3月 17 13:35:28 CST 2017从 foundation0.ilt.example.compts/2 上

[root@foundation2 ~]# cd ~kiosk ###切换到普通用户kiosk的家目录

[root@foundation2 kiosk]# pwd

/home/kiosk

[root@foundation2 kiosk]# cd .. ###切换到当前目录/home/kiosk的上级目录/home

[root@foundation2 home]#

7.ls 列出目录或文件信息

1)ls ###列出当前目录的目录内容

2)ls directory|filename ###列出指定的文件或目录内容

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

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

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

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

7)ls -R ###递归显示目录中所以内容

eg:[kiosk@foundation2 ~]$ ls ###列出当前目录的内容

Desktop    Downloads  Music     Public     Videos

Documents  lianxi     Pictures  Templates

[kiosk@foundation2 ~]$ ls /home/kiosk/lianxi ###列出/home/kiosk/lianxi的内容,这里使用的是绝对路径

file1  ml2

[kiosk@foundation2 ~]$ pwd ###查看当前目录

/home/kiosk

[kiosk@foundation2 ~]$ ls lianxi/ ###列出/home/kiosk/lianxi的内容,这里使用的是相对路径

file1  ml2

[kiosk@foundation2 ~]$ ls -d lianxi/ ###列出目录本身

lianxi/

[kiosk@foundation2 ~]$ ls -d

.

[kiosk@foundation2 ~]$ ls -d /home/kiosk/lianxi/

/home/kiosk/lianxi/

[kiosk@foundation2 ~]$ ls -l lianxi/ ###列出/home/kiosk/lianxi里面内容的属性

total 4

-rw-rw-r-- 1 kiosk kiosk 22 Mar 17 14:48 file1

drwxrwxr-x 2 kiosk kiosk  6 Mar 17 14:42 ml2

[kiosk@foundation2 ~]$ ls -ld lianxi/ ###列出/home/kiosk/lianxi本身的属性

drwxrwxr-x 3 kiosk kiosk 28 Mar 17 14:48 lianxi/

[kiosk@foundation2 lianxi]$ ls -a ###列出/home/kiosk/lianxi中的所有内容,包括“.”“..”

.  ..  file1  ml2

[kiosk@foundation2 lianxi]$ ls -R ###递归显示/home/kiosk/lianxi中的所以内容

.:

file1  ml2

./ml2:

8.cp 文件复制

1)cp是新建文件的过程

2)cp file directory ###把file复制到directory中

3)cp file test ###建立test文件,以file为模板

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

eg:[kiosk@foundation2 ~]$ ls

Desktop    Downloads  Music     Public     Videos

Documents  lianxi     Pictures  Templates

[kiosk@foundation2 ~]$ cp lianxi/file1 . ###将当前目录lianxi中文件file1复制到当前目录

[kiosk@foundation2 ~]$ ls

Desktop    Downloads  lianxi  Pictures  Templates

Documents  file1      Music   Public    Videos

[kiosk@foundation2 ~]$ cp lianxi/file1 test ###建立test文件,以当前目录lianxi中文件file1为模板

[kiosk@foundation2 ~]$ ls

Desktop    Downloads  lianxi  Pictures  Templates  Videos

Documents  file1      Music   Public    test

[kiosk@foundation2 ~]$ cp lianxi/file1 lianxi/test ###在当前目录lianxi中建立test文件,以当前目录lianxi中文件file1为模板

[kiosk@foundation2 ~]$ ls lianxi/

file1  ml2  test

[kiosk@foundation2 ~]$ cp Music/ lianxi/ -r ###把Music/目录复制的lianxi/目录底下

[kiosk@foundation2 ~]$ ls lianxi/

file1  ml2  Music  test

[kiosk@foundation2 ~]$ cp lianxi/ml2/ Music/ -r ###把lanxi中的ml2目录复制到Music/目录下

[kiosk@foundation2 ~]$ ls Music/

ml2

9.mv 移动或重命名

1)相同磁盘的mv是重命名,不同磁盘的mv是复制删除过程

2)mv file file1 directory ###将file,file1移动到directory

3)mv 存在的文件 不存在的文件 ###重命名文件

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

eg:[kiosk@foundation2 ~]$ mv file1 lianxi/ml2/ ###将文件file1移动到目录/home/kiosk/lianxi/ml2中

[kiosk@foundation2 ~]$ ls lianxi/ml2/ ###/home/kiosk/lianxi/ml2中已有文件file1

file1  lianxi

[kiosk@foundation2 ~]$ ls

Desktop    Downloads  Music     Public     test

Documents  lianxi     Pictures  Templates  Videos

[kiosk@foundation2 ~]$ mv test test1 ###将文件test冲命名为test1

[kiosk@foundation2 ~]$ ls

Desktop    Downloads  Music     Public     test1

Documents  lianxi     Pictures  Templates  Videos

[kiosk@foundation2 ~]$ mv lianxi/ml2/file1 . ###将/home/kiosk/lianxi/ml2中的文件file1移动到当前目录

[kiosk@foundation2 ~]$ ls

Desktop    Downloads  lianxi  Pictures  Templates  Videos

Documents  file1      Music   Public    test1

<<<第二单元练习>>>

1.用命令和正则表达式按照要求建立文件
*)用一条命令建立12个文件WESTOS_classX_linuxY(X的数值范围为1-2,Y的数值范围为1-6)
*)这些文件都包含在root用户桌面的study目录中
[root@localhost Desktop]#mkdir ./study
[root@localhost Desktop]#cd ./study/
[root@localhost study]#touch WESTOS_class{1..2}_linmkdirux{1..6}
*)用一条命令建立8个文件redhat_versionX(x的范围为1-8)
*)redhat_virsionX这些文件都包含在/mnt目录中的VERSION中
[root@localhost study]#mkdir /mnt/VERSION
[root@localhost study]#cd /mnt/VERSION/
[root@localhost VERSION]#touch redhat_version{1..8}

2.管理刚才信建立的文件要求如下
*)用一条命令把redhat_versionX中的带有奇数的文件复制到桌面的SINGLE中
[root@localhost VERSION]#mkdir /root/Desktop/SINGLE
[root@localhost VERSION]#cp /mnt/VERSION/redhat_version[:1.3.5.7:] /root/Desktop/SINGLE
*)用一条命令把redhat_versionX中的带偶数数的文件复制到/DOUBLE中
[root@localhost VERSION]#mkdir /DOUBLE
[root@localhost VERSION]#cp /mnt/VERSION/redhat_version[:2.4.6.8:] /DOUBLE
*)用一条命令把WESTOS_classX_linuxY中class1的文件移动到当前用户桌面的CLASS1中
[root@localhost VERSION]#cd /root/Desktop/
[root@localhost Desktop]#mkdir CLASS1
[root@localhost Desktop]#mv ./study/WESTOS_class[:1:]* ./CLASS1
*)用一条命令把WESTOS_classX_linuxY中class2的文件移动到当前用户桌面的CLASS2中
[root@localhost Desktop]#mkdir CLASS2
[root@localhost Desktop]#mv ./study/WESTOS_class[:2:]* ./CLASS2

3.备份/etc目录中所有带有名字带有数字并且以.conf结尾的文件到桌面上的confdir中
[root@localhost Desktop]#mkdir confdir
[root@localhost Desktop]#cp /etc/*[:0-9:]*.conf ./confdir

4.删掉刚才建立或者备份的所有文件
[root@localhost Desktop]#rm -rf /mnt/VERSION/redhat_version{1..8}
[root@localhost Desktop]#rm -rf */

Linux云自动化运维第二课的更多相关文章

  1. Linux云自动化运维第三课

    Linux云自动化运维第三课 一.正则表达式 1.匹配符 * ###匹配0到任意字符 ? ###匹配单个字符 [[:alpha:]] ###匹配单个字母 [[:lower:]] ###匹配单个小写字母 ...

  2. Linux云自动化运维第四课

    Linux云自动化运维第四课 一.vim 1.vim光标移动 1)在命令模式下 :数字  ###移动到指定的行 G  ###文件最后一行 gg  ###文件第一行 2)在插入模式下 i  ###光标所 ...

  3. Linux云自动化运维第五课

    Linux云自动化运维第五课 一.进程定义 进程就是cpu未完成的工作 二.ps命令 ps a ###关于当前环境的所有进程 x ###与当前环境无关的所有进程 f ###显示进程从属关系 e ### ...

  4. Linux云自动化运维第八课

    第十三单元 软件安装 一.软件名称识别 [abrt-addon-ccpp]-[2.1.11-19].[el7].[x86_64].rpm ###rpm结尾的适用与redhat操作系统 ||       ...

  5. Linux centosVMware 自动化运维认识自动化运维、启动salt相关服务、saltstack配置认证、salt-key命令用法、saltstack远程执行命令、saltstack - grains、saltstack – pillar

    一.认识自动化运维 传统运维效率低,大多工作人为完成 传统运维工作繁琐,容易出错 传统运维每日重复做相同的事情 传统运维没有标准化流程 传统运维的脚本繁多,不能方便管理 自动化运维就是要解决上面所有问 ...

  6. Linux轻量级自动化运维工具— Ansible

    Ansible 是什么 ? ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配 ...

  7. [Linux]Ansible自动化运维① - 入门知识

    目录 一.Ansible 概述 1.1 Ansible 是什么 1.2 Ansible 优势 1.3 Ansible 特性 二.Ansible 入门 2.1 Ansible 架构 2.2 Ansibl ...

  8. (转)实验文档5:企业级kubernetes容器云自动化运维平台

    部署对象式存储minio 运维主机HDSS7-200.host.com上: 准备docker镜像 镜像下载地址 复制 12345678910111213141516 [root@hdss7-200 ~ ...

  9. Linux运维第二课----Linux发展史、环境准备

    一.Linux的发展 1.1969年在贝尔实验室诞生Unix,是开源免费的,之后逐渐转变为收费系统. 2.1986年谭邦宁研发mini Unix,但主要用来教学. 3.斯托曼创建FSF(自由软件基金会 ...

随机推荐

  1. Hybrid容器设计之第三方网站

    平台化容器API释放 接上文:(阅读本文前,建议阅读前三篇文章先) 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹——落地篇 之前设计 ...

  2. window下redis的安装

    1.使用phpinfo()函数查看PHP的版本信息,这会决定扩展文件版本2.根据PHP版本号,编译器版本号和CPU架构,选择php_redis-2.2.5-5.5-ts-vc11-x86.zip和ph ...

  3. 华为oj---合并数组

    题目标题: 将两个整型数组按照升序合并,并且过滤掉重复数组元素 详细描述: 接口说明 原型: voidCombineBySort(int* pArray1,intiArray1Num,int* pAr ...

  4. Git使用规范

    团队开发中,遵循一个合理.清晰的Git使用流程,是非常重要的.为了团队研发的规范性,特制定此规范.当然不同的团队可能有着不同的约定,此规范仅供参考. 目录 1.基本原则 2.建议流程 基本原则 不到万 ...

  5. 使用php实现网站验证码功能【博主推荐】

             验证码是网站常用的一项安全措施,也是新人站长较难掌握的一项技能,这里我向大家介绍一简单有效的验证码实现方法. 开始之前 在正式开始之前我们需要打开php的gd2图形库支持(在php. ...

  6. oracle_权限

    Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级.Role 角色级.这些权限可以授予给用户.特殊用户publi ...

  7. MyEclipse - 解决 MyEclipse build workspace慢,validation javascript更慢的问题

    在这个过程中对.projet文件进行了跟踪比对,总算发现这个Build的时候进行Validation是从哪里定义的了.似乎因为我的项目是基于ExtJS2.0.2的web project,所以会提示打开 ...

  8. Github+Hexo搭建静态博客

    开始 在安装hexo之前,必须确认你已经安装了Node.js和Git,并且注册了一个Github账号. 1.创建Github仓库 1) 仓库名为xxx.github.io 创建一个以"用户名 ...

  9. asp.net core mvc权限控制:权限控制介绍

    在进行业务软件开发的时候,都会涉及到权限控制的问题,asp.net core mvc提供了相关特性. 在具体介绍使用方法前,我们需要先了解几个概念: 1,claim:英文翻译过来是声明的意思,一个cl ...

  10. DHCP协议

    来源摘取自百度百科 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服 ...