运维学习第二弹:

一、centOS虚拟机的基本指令:

二、三大开源协定:

三、软件的一般四类文件:

   二进制文件:可执行文件 windows=.exe(execute) /msi

                linux:ELF

   头文件/库文件(用于应用程序和内核的链接):

              windows:dll(dynamic linked Library)

              linux:so(shared object); ko(lernel object); a

   帮助文件:整个程序的使用说明书

   配置文件:变量


 就是这个文件自己的名字 任何文件的路径都由两部分组成:

    基名:就是这个文件自己的名字

    目录名:就是访问这个文件的路径中为了访问到指定文件而经过的所有的目录的累积名称

  如:

    /etc/sysconfig/network-scripts/ifcfg-eth0


    其中,ifcfg-eth0就是这个文件的基名,也就是这个文件真实的名字。

    /etc/sysconfig/network-scripts就是目录名,是为了找到这个文件所必须经过的目录的累积名称。


  有两个命令可以查看给定路径的基名和目录名:

     basename:取得给定文件路径的基名

1

2

    [root@localhost ~]# basename /etc/httpd/conf.d/welcome.conf

     welcome.conf

     dirname:取得给定文件路径的目录名

1

2

    [root@localhost ~]# dirname /etc/httpd/conf.d/welcome.conf

     /etc/httpd/conf.d/

四、接口方式的类型:

   API(用于程序编译):Application Programing Interface

   POSIX标准:Portable Operating System

   ABI(执行,应用时的接口):Application Binary Interface

五、命令的格式:

   COMMAND(命令):想要执行的操作主题,进程

           内部命令:内建于shell中的命令 (bin)

           外部命令:通过安装应用程序而得到的命令 找到二进制程序文件  

                 第一次执行通过PATH变量中的路径进行查找,以后只要hash缓存中依            然有缓


存记录就不会在查找PATH变量,直接查找缓存。

   注意:

      使用type命令查看一个命令属于内部还是外部

      $PATH变量中有没有适合的路径

      利用type区分命令

   OPTIONS(选项):此次命令执行过程中所使用的特性

      短选项: -CHAR  一次可以写多个,-a -l -d==>-ald

      长选项:--WORD:--help  --list 长选项不能合并书写,只能一个一个写

  *注意:

     1.有些选项需要额外的参数

     2.有些选项可以不用-引导,有些命令的选项一定不加-

     3.有些命令的长选项使用一个-


ARGUMENS[PARAMETERS](参数):此次命令执行的操作对象

     有些命令可以同时又多个参数,但是参数之间必须要用空白字符分隔

  注意:

     1.命令在书写的时候,命令,选项,参数之间必须使用空白字符分隔;

     2 .有些命令在书写时,options和argumends[paramets]位置可以调换

     3.命令中的所有组成部分。严格区分大小写;(文件系统规定严格)

 获取命令的使用帮助:

     []:可以省略不写,也可以根据需要填写

     <>:必须书写

     ...:有更多的

      a|b|c:多选一

     内置命令:

           help+COMMAND

     外部命令:

         1.使用--help选项

         2.man(manual)

            man 九章:

              1.用户命令(所有用户可以执行的普通命令)

              2.系统调用

              3.C库函数

              4.设备和特殊文件

               5.配置文件格式

              6.游戏相关的帮助信息

              7.杂项

              8.管理类命令(只有root能够执行的管理命令)

              9.内核手册

          每个man手册中都有很多字段:

             NAME;程序的名称及想关 的功能简介

                  

             OPTIONS:选项的用法及含义的详细说明

             AUTHOU:程序的作者信息

             REAMPLES:命令 的使用范例

             reporting   bugs:报告程序中包含的 



        3.info COMMAND:huode mingling 的在线帮助文档

        4.有很多的程序有自带的帮助文件:

           /usr/share/doc/APP-NAME-VERISION/

         README:程序的相关信息

         INSTALL:程序的安装信息

         CHANGGES:程序文档信息

           wiki

           FAQ 

六:inux哲学思想:

    1.一切皆文件:linux把所有的资源抽象为文件的形式,甚至连硬件、网络通信用的套接字以及管道都如


此;文件:一组有边界的位于存储设备中的流式数据;

    2.由众多功能单一的小程序组成,但是却可以实现复杂任务;复杂任务:尽可能完美的组合多个小程序


,让其功能发挥至极致;

    3.尽量避免与用户进行直接交互,易于以编程的方式实现自动化任务实施;

    4.使用纯文本(字符本身具备的概念)文件保存程序的配置信息;

七: 文件系统:

   /:原初起点   linux只有一个根

   元数据(有专门的文件存放):描述文件的属性

   数据:文件的内容

  在文件系统中,基于文件名引用文件,按名来进行存取。在文件系统中对于文件名有一系列规定:

    1.文件名不能包括“/”字符;

   “/”表示跟文件系统

    “/”表示路径分隔符

    2.文件名的长度不能超多250字符;

    3.在同一个位置中,文件名不能重复;

    4.文件名要求严格区分大小写;

八:使用路径的概念里表示文件的具体位置:

   路径:定位一个文件所在的位置时,所必须经过的目录的层次结构;

   路径的描述方式:

          绝对路径:一切从“/”开始查找的路径

          相对路径:从“”工作目录(当前路径)"开始查找的路径

          .=表示当前的目录;

          ..=表示当前目录的父目录

    注意:如果顺路就用相对路径,不顺路就用绝对路径

       在目标文件的绝对路径中是否包含当前的目录

       ./m,通常.可以省略间歇为m

       家目录:每个用户登录系统时 的当前目录,也是每个用户的起始目录 ;~代指任何一个路 径搜可以


分为两部分:

      文件基名:basename

      文件记录名:dirname 


     HFS:目录划分的层级标准 

     /:

     bin:普通用户可以执行的普通操作命令

     boot:引导操作系统启动的静态文件,包括:引导程序,内核,initramfs等

     dev:device,设备

    块设备:能够实现数据存放的设备

    字符设备 :能够实现数据传输和数据处理的设备,顺序访问

    etc:存放主机专用的系统配置文件

    home:普通用户的家目录的根 

    lib、lib64:存放共享库的文件                           

    media:可移动设备的挂载点

    mnt:临时的文件系统的挂载点

    opt:以前是非常流行的第三方程序的安装目录,现在一般都是空的

    root:超级用户的家目录

    bin:存放那些只有超级用户root能够执行的管理类命令

    srv:存放由系统提供的各种服务产生的目录

    tmp:temprate,临时文件目录,每隔30天自动清除该目录中30天之内没有访问的数据

    usr:linux系统的第二根,主要安装第三方应用程序/usr/数据,(数据库)伪文件系统

    proc:process,进程

    sys:system

文件类型:

根据颜色分:黑色或白色:普通的文本文件

            绿色:可执行的文件

            ×××;设备文件

             红色:包文件(压缩包,归档包,软件包)

            深蓝色:目录文件

            天蓝色:符号链接文件,相当于windows快捷方式

            紫色:套接字文件

            棕色:管道文件

根据标记区分: -:文本文件

              b:块设备文件

              c:字符设备

              d:目录文件

              l:符号链接文件

              p:管道文件

              s;套接字文件

使用file命令查看:非常准确的文件类型查看方式

  linux操作系统的命令:

    一、echo  :

           linux的echo命令, 在shell编程中极为常用, 在终端下打印变量value的时候也是常常用到的, 


因此有必要了解下echo的用法


      echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。

      该命令的一般格式为: echo [ -n ] 字符串

      其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号。用echo命令输出加引号的字符串


时,将字符串原样输出;用echo命令输出不加引号      的字符串时,将字符串中的各个单词作为字符串输


出,各字符串之间用一个空格分割。


      功能说明:显示文字。

      语   法:echo [-ne][字符串]或 echo -e abc \n def(换行输出) 

      补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换


行号。

      参   数:-n 不要在最后自动换行

       -e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般

      文字输出:

          \a 发出警告声;

          \b 删除前一个字符;

          \c 最后不加上换行符号;

          \f 换行但光标仍旧停留在原来的位置;

          \n 换行且光标移至行首;

          \r 光标移至行首,但不换行;

          \t 插入tab;

          \v 与\f相同;

          \\ 插入\字符;

          \nnn 插入nnn(八进制)所代表的ASCII字符;

         –help 显示帮助

         –version 显示版本信息

    二、printf

      语法:

           printf(选项)(参数)

           --help:在线帮助;

           --version:显示版本信息。

      参数:

           输出格式:指定数据输出时的格式;

           输出字符串;指定要输出的数据

      格式代替符:

            %b 相对应的参数被视为含有要被处理的转义序列之字符串。

            %c ASCII字符。显示相对应参数的第一个字符

            %d, %i 十进制整数

            %e, %E, %f 浮点格式 

            %g %e或%f转换,看哪一个较短,则删除结尾的零 

            %G %E或%f转换,看哪一个较短,则删除结尾的零 

            %o 不带正负号的八进制值 

            %s 字符串 %u 不带正负号的十进制值 

            %x 不带正负号的十六进制值,使用a至f表示10至15 

            %X 不带正负号的十六进制值,使用A至F表示10至15 

            %% 字面意义的%

      转义序列:

            \a 警告字符,通常为ASCII的BEL字符 

            \b 后退 

            \c 抑制(不显示)输出结果中任何结尾的换行字符(只在%b格式指示符控制下的参数字符串中


有效),而且,任何留在参数里的字符、任何接下来的参数以及任何留在格式字符串中的字符,都被忽略 

            \f 换页(formfeed) 

            \n 换行 

            \r 回车(Carriage return) 

            \t 水平制表符 

            \v 垂直制表符 

            \\ 一个字面上的反斜杠字符 

            \ddd 表示1到3位数八进制值的字符,仅在格式字符串中有效 

            \0ddd 表示1到3位的八进制值字符