一、Linux基础知识

  1、人机交互界面:

    a、GUI

    b、CLI:[login@hostname workdir]# COMMAND

  2、命令知识

    通用格式:# COMMAND  OPTIONS ARGUMENTS

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

      程序  --> 进程

      静态  --> 动态(有生命周期)

    b、命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件,多数程序文件都存放在:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin

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

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

    c、共享库:如果是32位linux操作系统那么就在/lib下,如果是64位操作系统那么就在/lib64下,初次之外还有/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64。64位可以兼容32位但是32位不能兼容64位。注意:并非所有的命令都有一个在某目录与之对应的可执行程序文件。

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

[root@localhost /]# file /bin/ls
/bin/ls: ELF -bit LSB executable, x86-, version (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6., BuildID[sha1]=c5ad78cfc1de12b9bb6829207cececb990b3e987, stripped

    e、命令分为两类

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

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

二、shell概述

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

    a、他在内部提供了环境变量PATH:从哪些路径查找用户键入的命令字符串所对应的命令文件,查找次序为自左而右

[root@localhost /]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

  2、查看命令类型: type COMMAND

[root@localhost /]# type ls
ls is aliased to `ls --color=auto'
[root@localhost /]# type type
type is a shell builtin

  3、COMMAND  OPTIONS ARGUMENTS中的OPTIONS

    a、指定命令的运行特性

    b、选项有两种表现形式:

      短选项: -C,例如 -l,-d。注意:有些命令的选项没有-,如果同一命令同时使用多个短选项,多数可合并。

      长选项: --word,例如--help,--human-readable。长选项不能合并。

      有些选项可以带参数,此称为选项参数;

  4、COMMAND  OPTIONS ARGUMENTS中的ARGUMENTS

    a、命令的作用对象:即命令对什么生效

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

三、获取命令的使用帮助

  1、内部命令: help COMMAND

[root@localhost /]# help type

  2、外部命令

    a、命令自带简要格式的使用帮助:# COMMAND --help

[root@localhost /]# ls --help

    b、使用手册:manual。默认使用手册都在/usr/share/man。

      man 手册格式:

        SECTION:

          NAME:功能性说明

          SYNOPSIS:语法格式

          DESCRIPTION:描述

          OPTIONS:选项

          EXAMPLES:使用示例

          AUTHOR:作者

          BUGS:报告程序bug的方式

          ...

[root@localhost /]# ls /usr/share/man
ca da en fr id ja man0p man1p man2 man3 man3x man4x man5x man6x man7x man8x man9x overrides pt ru sv uk zh_TW
cs de es hu it ko man1 man1x man2x man3p man4 man5 man6 man7 man8 man9 mann pl pt_BR sk tr zh_CN
powernow-k8-decode poweroff
[root@localhost /]# man poweroff

        man命令中SYNOPSIS描述:

          []:可选内容

          <>:必须提供的内容

          a|b|c:多选一

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

    c、使用手册:压缩格式的文件,有章节之分

      /usr/share/man

        man1,man2,...

        1:用户命令

        2:系统调用

        3:C库调用

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

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

        6:游戏使用帮助:

        7:杂项:

        8:管理工具及守护进程

        此时我们查看第8章节下的lvcreate这个命令的man

[root@localhost /]# man 8 lvcreate 

      但是并不是每一个章节下都有,我们可以通过whatis COMMAND来查看哪些章节有此命令,其执行过程是查询数据库得到的,所以在查询之前最好先更新数据库。因为有些命令有可能刚安装导致数据库中的内容不是最新的

[root@localhost /]# makewhatis
[root@localhost /]# whatis passwd
passwd () - update user's authentication tokens #第一章节有
sslpasswd (1ssl) - compute password hashes
passwd () - password file #第五章节有

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

      翻屏:

        空格键:向文件尾翻一屏

        b:向文件首部翻一屏

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

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

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

        k:向文件首部翻一行

        G:跳转至最后一行

        #G:跳转至指定行

        1G:跳转至文件首部

      文本搜索:

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

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

          n:与查找命令方向相同

          N:与查找命令方向相反

      退出:

        q:quit

      man命令选项

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

    c、info COMMAND :获取命令的在线文档

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

      README:程序的相关的信息

      INSTALL:安装帮助

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

    e、主流发行版官方文档

      http://www.redhat.com/doc

    f、程序官方的文档

      官方站点上的"Document"

    g、搜索引擎

      google

        keyword filetype:pdf  :比如centos filetype:pdf

        keyword site:domain.tld :比如centos site:magedu.com

        ...

  3、基础命令

    a、添加用户:useradd

[root@node3 ~]# useradd gentoo

    b、查看对应用户的id

[root@node3 ~]# id gentoo
uid=(gentoo) gid=(gentoo) groups=(gentoo)

    c、添加用户slackware,要求指定其所用的shell为/bin/tcsh

[root@node3 ~]# useradd -s /bin/tcsh slackware
[root@node3 ~]# id slackware
uid=(slackware) gid=(slackware) groups=(slackware)
[root@node3 ~]# tail - /etc/passwd
slackware:x::::/home/slackware:/bin/tcsh

  4、书籍的出版社:

    O'Reiley

    Wrox

    机械工业,电子工业,人邮,清华大学,水利水电

linux学习8 运维基本功-Linux获取命令使用帮助详解的更多相关文章

  1. linux学习9 运维基本功-Linux常用基础命令实战应用

    一.文件系统知识回顾 1.Linux文件系统: a.文件名称严格区分字符大小写 b.文件可以使用除/以外任意字符 c.文件名长度不能超过255个字符 d.以.开头的文件为隐藏文件: . :当前目录 . ...

  2. linux学习17 运维核心技能-Linux系统下用户权限管理

    一.权限管理 1.ls -l rwxrwxrwx 左三位:定义user(owner)的权限 中三位:定义group的权限 右三位:定义other的权限 1.进程安全上下文 a.进程对文件的访问权限应用 ...

  3. Linux学习之让进程在后台可靠运行的方法详解

    我们经常会碰到这样的问题,用 telnet/ ssh 登录了远程的 Linux 服务器http://www.maiziedu.com/course/592/,运行了一些耗时较长的任务, 结果却由于网络 ...

  4. linux学习之路第九天(磁盘分区,挂载详解)

    磁盘分区,挂载 -----分区基础知识 分区的方式 1)mbr分区: 1.最多支持四个主分区 2.系统只能安装在主分区 3.扩展分区要占一个主分区 4.mbr最大只支持2TB,但拥有最好的兼容性 -- ...

  5. linux命令学习笔记(22):find 命令的参数详解

    find一些常用参数的一些常用实例和一些具体用法和注意事项. .使用name选项: 文件名选项是find命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用. 可以使用某种文件名 模式来匹配文 ...

  6. Linux运维常用150个命令

    Linux运维常用150个命令 转载自:www.cnblogs.com/bananaaa/p/7774467.html 命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的词典,更 ...

  7. 老男孩Linux.shell.RHCE运维初中高级50G附解压密码

    学习Linux,好的教程.使学习事半功倍! 老男孩Linux.shell.RHCE运维初中高级 下载地址: http://pan.baidu.com/s/1hsQOb2W 密码: h4hs 解压密码: ...

  8. Linux轻量级自动运维工具-Ansible浅析【转】

    转自 Linux轻量级自动运维工具-Ansible浅析 - ~微风~ - 51CTO技术博客http://weiweidefeng.blog.51cto.com/1957995/1895261 Ans ...

  9. Linux轻量级自动运维工具-Ansible浅析 转

    转自 Linux轻量级自动运维工具-Ansible浅析 - ~微风~ - 51CTO技术博客http://weiweidefeng.blog.51cto.com/1957995/1895261 Ans ...

随机推荐

  1. Vue框架(一)——Vue导读、Vue实例(挂载点el、数据data、过滤器filters)、Vue指令(文本指令v-text、事件指令v-on、属性指令v-bind、表单指令v-model)

    Vue导读 1.Vue框架 vue是可以独立完成前后端分离式web项目的js框架 三大主流框架之一:Angular.React.Vue vue:结合其他框架优点.轻量级.中文API.数据驱动.双向绑定 ...

  2. Go基础编程实践(三)—— 日期和时间

    日期和时间 package main import ( "fmt" "time" ) func main() { // 获取当前时间 current := ti ...

  3. Java8 集合相关操作

    // java8 集合快速转成string List<String> cities; String citiesCommaSeparated = String.join(",&q ...

  4. docker 命令(我使用过的)

    是否安装docker:    docker version 启动docker:    service docker start 查看本机可用镜像:    docker images 删除镜像: doc ...

  5. 关于ElasticSearch的堆内存设置与优化

    1.什么是堆内存?Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象.在 Java 中,堆被划分成两个不同的区域:- 新生代 ( Young ).- 老年代 ( Ol ...

  6. 如何在ArcGIS饼状图中下方添加文字

    内容源自:ArcGIS10.2基础教程(丁华) 书上要求在统计图的饼状图下方显示“总面积组成”,以及图例是只显示文字. 该如何操作呢? 其实就是在高级属性中选择标题-副标题-显示“总面积组成”即可 而 ...

  7. python 代码中log表示含义

    log表示以e为底数的对数函数符号.其验证代码如下: a=np.log(np.e )print(a)print(np.e)

  8. shell编程必须要掌握的命令-xargs

    一,说xargs命令前,说一下什么是shell编程 什么是shell编程呢,说白了就是按一定的规则把各种命令组织起来,完成一定的事情.纯属个人理解,哈哈.不管是交互式的shell,还是非交互的shel ...

  9. 【开发笔记】- Velocity中特殊符号展示乱码的问题

    问题 需求是需要在后台将收货国家对应的币种.币种符号返回给前台并展示,在返回给前端后出现了页面币种符号展示乱码的问题. 解决方式 在获取货币符号时添加以下代码,防止velocity对特殊符号进行转义处 ...

  10. 【转载】C#中List集合使用LastIndexOf判断元素最后一次出现的索引位置

    在C#的List集合操作中,有时候需要判断元素对象在List集合中第一次出现的索引位置信息,此时需要使用到List集合的IndexOf方法来判断,如果元素存在List集合中,则IndexOf方法返回所 ...