首页 > 代码库 > Linux基础入门(二)

Linux基础入门(二)

Linux的哲学思想

  1.一切皆文件:把几乎所有资源统统抽象为文件形式;包括硬件设备,甚至通信接口等;

    open(), read(), write(), close(), delete(), create()

  2.由众多功能单一的程序组成;一个程序只做一件事,并且做好;组合小程序完成复杂任务;

  3.尽量避免跟用户交互;

    目标:易于以编程的方式实现自动化任务;

  4.使用文本文件保存配置信息;


Linux的哲学思想之一:一切皆文件

  表现之一:硬件设备也通过文件表示

    物理终端:/dev/console

    虚拟终端:/dev/tty# [1,6]

    串行终端:/dev/ttyS#

    伪终端:/dev/pts/#


  物理终端,控制台:console

  虚拟终端:6个,tty

    Ctrl+Alt+F[1-6]

  图形终端:

    CentOS 6:

      Ctrl+Alt+F7

    CentOS 7:

      在哪个虚拟终端启动,即位于哪个虚拟终端

  串行终端:ttyS

  伪终端:pty


  查看终端设备:   

    [root@centos7 ~]# tty

    /dev/pts/0

  启动GUI:

    在某一虚拟终端接口运行命令:startx &


CLI接口:命令行接口

  [root@centos7 ~]# COMMAND

  说明:

    root: 当登录的用户

    centos7: 当前主机的主机名,非完整格式;若想查看完整格式:hostname 即可获得

    ~:用户当前所在的目录(current directory),也称为工作目录(working directory);相对路       径;

    #:命令提示符;

      #:管理员账号,为root; 拥有最高权限,能执行所有操作;

      $:普通用户,非root用户;不具有管理权限,不能执行系统管理类操作;


      注意:建议使用非管理员账号登录;执行管理操作临时切换至管理员,操作完成即退回。


命令的语法通用格式:

# COMMAND [OPTIONS] [ARGUMENTS]

  COMMAND: 发起一命令,请求内核将某个二进制程序运行为一个进程;

    程序 --> 进程

    静态 --> 动态(有生命周期:开启到结束之间)


    命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件

    多数系统程序文件都存放在:

      /bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin

    普通命令:/bin,/usr/bin,/usr/local/bin

    管理命令:/sbin,/usr/sbin,/usr/local/sbin

    共享库:/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64

      32bits的库:/lib,/usr/lib,/usr/local/lib

      64bits的库:/lib64,/usr/lib64,/usr/local/lib64


  注意:并非所有的命令都有一个在某目录与之对应的可执行程序文件


  命令必须遵循特定格式规范:exe, msi, ELF(Linux)

 

  命令分为两类:

    由shell程序的自带的命令:内置命令(builtin)

    独立的可执行程序文件,文件名即命令名:外部命令


  shell程序是独特的程序,负责解析用户提供的命令;

    环境变量:

      PATH:从哪些路径中查找用户键入的命令字符串所对应的命令文件;查找次序:自左而右。

      [root@centos7 ~]# echo $PATH

      /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin


  查看命令类型:

   [root@test1 ~]# type cd(command)

   cd is a shell builtin


OPTIONS:

  选项有两种表现形式:

    短选项:-C, 例如-l, -d

      注意:有些命令的选项没有-

      如果同一命令同时使用多个短选项,多数可合并:-l -d = -ld

    长选项:--word, 例如--help, --human-readable

      注意:长选项不能合并


  注意:有些选项可以带参数,此称为选项参数;(命令篇幅会体现)


ARGUMENTS:

  命令的作用对象;命令对什么生效;

  注意:不同的命令的参数;有些命令可同时带多个参数,多个之间以空白字符分隔;

  例如:ls -ld /var /etc

      /var和/etc就是作用对象



获取命令的使用帮助:

  内部命令:

    [root@test1 ~]# help COMMAND

  外部命令:

    (1) 命令自带简要格式的使用帮助

      [root@test1 ~]# COMMAND --help

    (2) 使用手册:manual

      位置:/usr/share/man

      [root@test1 ~]# man COMMAND

        部分说明:

          NAME:功能性说明

          SYNOPSIS:语法格式

          DESCRIPTION:描述

          OPTIONS:选项

          EXAMPLES:使用示例

          AUTHOR: 作者

          BUGS: 报告程序bug的方式

          SEE ALSO: 参考

        SYNOPSIS: 

          []:可选内容;

          <>:必须提供的内容;

          a|b|c:多选一;

          ...:同类内容可出现多个;


      使用手册:压缩格式的文件,有章节之分;/usr/share/man1, man2, ...

        1:用户命令;

        2:系统调用;

        3:C库调用;

        4:设备文件及特殊文件;

        5:文件格式;(配置文件格式)

        6:游戏使用帮助;

        7:杂项;

        8:管理工具及守护进行;


        ~]# man CHAPTER(章节) COMMAND

        示例:

          [root@centos7 ~]# man 1 ls

          注意:并非每个COMMAND在所有章节下都有手册


        如何查看命令在第几章节有:

          [root@centos7 ~]# whatis ifconfig

          ifconfig (8)         - configure a network interface


          注意:其执行过程是查询数据库进行的;


        手动更新数据库:

          [root@test1 ~]# makewhatis


      man命令打开手册以后的操作方法:

        翻屏操作:

          空格键:向文件尾翻一屏;

          b: 向文件首部翻一屏;

          Ctrl+d:向文件尾部翻半屏;

          Ctrl+u:向文件首部翻半屏;

          回车键:向文件尾部翻一行;

          k: 向文件首部翻一行;

          G:跳转至最后一行;

          #G: 跳转至指定行;

          1G:跳转至文件首部;(g也是可以跳至首都)


       文本搜索:

          /keyword:从文件首部向文件尾部依次查找;不区分字符大小写;

          ?keyword:从文件尾部向文件首部依次查找;

          n: 与查找命令方向相同;

          N: 与查找命令方向相反;


        退出:

          q: quit


      选项:

        -M /PATH/TO/SOMEDIR:到指定目录下查找命令手册并打开之;


    (3) info COMMAND

      获取命令的在线文档;


    (4) 很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION

      README:程序的相关的信息;

      INSTALL: 安装帮助;

      CHANGES:版本迭代时的改动信息;


    (5) 主流发行版官方文档

      http://www.redhat.com/doc


    (6) 程序官方的文档:

      官方站点上的“Document”


    (7) 搜索引擎

      google

       如何使用收索功能:

        keyword filetype:pdf(文件类型搜索)

        keyword site:domain.tld(域名搜索)





本文出自 “变相怪杰” 博客,请务必保留此出处http://waldenkk.blog.51cto.com/2410270/1902370

Linux基础入门(二)