命令的语法通用格式:
        # COMMAND OPTIONS ARGUMENTS
        COMMAND:
            发起一个命令:请求内核将某个二进制程序运行为一个进程
                程序 --> 进程
                静态 --> 动态(有生命周期)

命令本身是一个可执行的程序文件;是二进制格式的文件,有可能会调用共享库文件;
                多数系统程序文件都存放在:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin
                    管理命令:/sbin,/usr/sbin,/usr/local/sbin
                    普通命令:/bin,/usr/bin,/usr/local/bin
                共享库都存放在:/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

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

命令必须遵循特定格式规范:
                windows程序后缀名:exe,msi
                linux程序后缀名:ELF
                    ~]# file /bin/ls 查看文件格式

命令分为两类:
                由shell程序的自带的命令:内置命令(builtin),没有对应的可执行文件
                独立的可执行程序文件,文件名即命令名:外部命令

shell程序是独特的程序,负责解析用户提供的命令
                环境变量:
                    PATH:从哪个路径中查找用户键入的命令字符串所对应的命令文件
                    ~]# echo $PATH
                    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
                    查找次序:自左而右

查看命令类型:
                ~]# type [COMMAND]
                ~]# type type
                type is a shell builtin

OPTIONS:
            指定命令的运行特性

选项有两种表现形式:
                短选项:-C,例如-l,-d
                    注意:有些命令的选项没有-
                        如果同一命令同时使用多个短选项,多数可以合并使用:-l -d = -ld
                长选项:--word,例如:--help,--human-readable
                    注意:长选项不能合并

注意:有些选项可以带参数,此称为选项参数;短选项参数大多以空格分隔,长选项大多以等号分隔

ARGUMENTS:
            命令的作用对象是:命令对什么生效

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

例如:ls -ld /var /etc

获取命令的使用帮助:
        内置命令:
            help COMMAND
        外部命令:
            (1)命令自带简要格式的使用帮助
                # COMMAND --help
            (2)使用手册:manual
                位置:/usr/share/man
                # man COMMAND
                    SECTION:
                        NAME:简要功能性说明
                        SYNOPSIS:语法格式
                        DESCRIPTION:描述
                        OPTIONS:选项的详细说明
                        EXAMPLES:使用示例
                        AUTHOR:作者
                        BUGS:报告程序bug的方式
                        SEE ALSO:额外参考
                        ……

SYNOPSIS:
                        []:可选内容
                        <>:必填内容
                        a|b|c:多选一
                        ...:同类内容可以出现多次

使用手册:压缩格式的文件,有章节之分:
                    位于/usr/share/man
                        man1,man2,……

1:用户命令
                        2:系统调用
                        3:C库调用
                        4:设备文件及特殊文件
                        5:文件格式(配置文件格式)
                        6:游戏使用帮助
                        7:杂项
                        8:管理工具或守护进行

~]# man CHAPTER COMMAND:
                        注意:并非每个COMMAND在所有章节下都有手册
                            查看命令有没有帮助手册:
                                ~]# whatis COMMAND
                                
                                注意:其执行过程是查询数据库进行的,如果新增加了命令,还没有更新数据库,那么whatis命令是无效的
                                手动更新数据库:
                                    ~]# makewhatis

man命令打开手册以后的操作方法:
                    翻屏:
                        空格键:向文件尾部翻一屏
                        b:向文件首部翻一屏
                        Ctrl+d:向文件尾部翻半屏
                        Ctrl+u:向文件首部翻半屏
                        回车键:向文件尾部翻一行
                        k:向文件首部翻一行
                        G:跳转至最后一行
                        #G:跳转至指定行
                        1G:跳转至文件首部

文本搜索:
                        /keyword:从文件首部向文件尾部依次查找
                        ?keyword:从文件尾部向文件首部依次查找
                            n:与查找命令方向相同
                            N:与查找命令方向相反
                    退出:
                        q:quit

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

(3)info COMMAND
                获取命令的在线文档

(4)很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION
                README:程序的相关信息
                INSTALL:安装帮助
                CHANGES:版本迭代时的改动信息

(5)主流发行版官方文档
                https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/
                https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/8/

(6)程序官方的文档
                官方站点上的"Document"

(7)搜索引擎
                www.google.com
                搜索关键字:
                    keyword site:domain.tld
                    keyword filetype:pdf
                    ……

书籍的出版社:
            O'Reilly出版社
            https://www.oreilly.com/

Wrox出版社
            http://www.wrox.com/WileyCDA/

机械工业出版社
            http://www.cmpbook.com/index.php?id=1

电子工业出版社
            https://www.phei.com.cn/

人民邮电出版社
            http://www.ptpress.com.cn/

清华大学出版社
            http://www.tup.tsinghua.edu.cn/index.html

水利水电出版社
            http://www.waterpub.com.cn/

最新文章

  1. [uva11722&amp;&amp;cogs1488]和朋友会面Joining with Friend
  2. 【BZOJ】1097: [POI2007]旅游景点atr(spfa+状压dp)
  3. QT绘制半透明窗体(改写paintEvent,超级简单)
  4. 在Dll中创建对话框并调用
  5. 菜鸟之旅——.NET垃圾回收机制
  6. 迁移FRS至DFSR SYSVOL
  7. cnetos 下 rar 解压
  8. ELK学习笔记之F5-HTTP-requesting-logging logstash filter
  9. 清除OpenStack网络与路由
  10. 3.RapidIO串行物理层的包传输过程
  11. 解决linux安装软件依赖的曲线救国方案
  12. 【BZOJ4559】成绩比较(动态规划,拉格朗日插值)
  13. jsp中的js中获取项目路径的方法
  14. CentOS下yum安装PHP,配置php-fpm服务
  15. Zabbix 报警通知邮件和微信vim /etc/hosts
  16. js中getBoundingClientRect()的用法介绍
  17. Android基础新手教程——3.1 基于监听的事件处理机制
  18. 收藏 Silverlight中子窗体关闭刷新父窗体(转载)
  19. android IPC 进程间通讯
  20. 1.2.3 创建Cocos2D-iPhone的帮助文档

热门文章

  1. 1. Linux基本操作和基本命令
  2. 深入解析d3弦图
  3. Junit单元测试学习
  4. iscsi-分区类型
  5. Java学习笔记-GUI
  6. ZOJ Problem Set - 1005
  7. Linux 安装 openoffice
  8. luoguP2634聪聪可可(点分治)
  9. Redis(1.13)Redis cluster 分布式集群手动配置
  10. 用CTime类得到当前日期 时间