Linux命令格式、获取帮助、文件系统

一、Linux的命令

    (一)、概念和意义:

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

                程序 –> 进程

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

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

                多数系统程序文件存放目录:

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

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

                共享库存放目录:

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

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

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

    (二)、遵循特定格式规范:

            exe, msi, ELF(Linux)

                ~]# file /bin/ls

                    查看命令规范    

    (二)、分类

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

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

                解析流程:从环境变量PATH存储的目录中自左往右寻找执行的命令对应的二进制程序,并调用之。

                环境变量PATH的查看方法:

                        ~]# echo $PATH

                            /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

                        查找次序:自左而右;

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

            查看命令类型:

                type COMMAND

    (三)、书写格式或者是使用方法

        # COMMAND OPTIONS ARGUMENTS

            COMMAND: 

                执行命令的名称

            OPTIONS:

                (1) 指定命令的运行特性:

                        比如命令执行需要返回的那些参数等等,不同的命令有不同的特性区分。

                (2) 表现形式:

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

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

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

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

                            注意:长选项不能合并;

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

            ARGUMENTS:

                命令的作用对象;命令对什么生效;一般为文件、数据等

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

二、获取某个命令的使用帮助

    内部命令和外部命令不同:

    (一)、内部命令

            help COMMAND

    (二)、外部命令

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

                # COMMAND –help

        (2) 使用手册:manual

            位置:/usr/share/man

            # man COMMAND

                打开某个命令手册后的使用介绍:

                    NAME:功能性说明

                    SYNOPSIS:语法格式

                        []:可选内容;

                        <>:必须提供的内容;

                        a|b|c:多选一;

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

                    DESCRIPTION:描述

                    OPTIONS:选项

                    EXAMPLES:使用示例

                    AUTHOR: 作者

                    BUGS: 报告程序bug的方式

                    SEE ALSO: 参考

                    … 

            使用手册:手册是压缩格式的文件,里面章节之分;

                /usr/share/man

                    man1, man2, …

                    1:用户命令;

                    2:系统调用;

                    3:C库调用;

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

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

                    6:游戏使用帮助;

                    7:杂项;

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

                ~]# man CHAPTER COMMAND

                    查看命令在某个章节下的手册

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

                        查看命令在哪个章节:

                            ~]# whatis COMMAND

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

                                手动更新数据库:

                                    ~]# 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) 主流发行版官方文档

            http://www.redhat.com/doc

        (6) 程序官方的文档:

            官方站点上的“Document”

        (7) 搜索引擎

            google

                keyword filetype:pdf

                keyword site:domain.tld

三、Linux文件系统

    (一)、概念

        文件系统是Linux中有索引的层级结构的一张倒叉树结构。

            原始起点为/,称为根目录。

    (二)、分类

            (1) 目录:路径映射

                    路径表示方法分类两种:

                        [1]:相对路径

                        [2]:决定路径

            (1) 文件:存储空间存储的一段流式数据,对数据可以做到按名存取

    (三)、Linux目录规范

        FHS(Filesystem Hierarchy Standard)

            /bin:所有用户可用的基本命令程序文件;

                /sbin:供系统管理使用的工具程序;

                /boot:引导加载器必须用到的各静态文件:kernel, initramfs(initrd), grub等;

                /dev:存储特殊文件或设备文件;

                    设备有两种类型:字符设备(线性设备)、块设备(随机设备);

                /etc:系统程序的配置文件,只能为静态;

                /home:普通的家目录的集中位置;一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME;

                /root:管理员的家目录;可选;

                /lib:为系统启动或根文件系统上的应用程序(/bin, /sbin等)提供共享库,以及为内核提供内核模块

                    libc.so.*:动态链接的C库;

                    ld*:运行时链接器/加载器;

                    modules:用于存储内核模块的目录;

                /lib64:64位系统特有的存放64位共享库的路径;

                /media:便携式设备挂载点,cdrom, floppy等;

                /mnt:其它文件系统的临时挂载点;

                /opt:附加应用程序的安装位置;可选路径;

                /srv:当前主机为服务提供的数据;

                /tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供所用户执行写入操作;有特殊权限;

                /usr:usr Hierarchy,全局共享的只读数据路径;

                    bin, sbin

                    lib, lib64

                    include:C程序头文件;

                    share:命令手册页和自带文档等架构特有的文件的存储位置

                    local:另一个层级目录;

                    X11R6:X-Window程序的安装位置

                    src:程序源码文件的存储位置

                /usr/local:Local hierarchy,让系统管理员安装本地应用程序;也通常用于安装第三方程序;

                /var:/var Hierarchy,存储常发生变化的数据的目录;

                    cache    Application cache data

                    lib        Variable state information

                    local    Variable data for /usr/local

                    lock    Lock files

                    log        Log files and directories

                    opt        Variable data for /opt

                    run        Data relevant to running processes

                    spool    Application spool data

                    tmp        Temporary files preserved between system reboots    

                /proc:基于内存的虚拟文件系统,用于为内核及进程存储其相关信息;它们多为内核参数,例如net.ipv4.ip_forward, 虚拟为net/ipv4/ip_forward, 存储于/proc/sys/, 因此其完整路径为/proc/sys/net/ipv4/ip_forward;

                /sys:sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径;其主要作用在于为管理Linux设备提供一种统一模型的的接口;

                    参考:https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/

    (四)、Linux文件类型

        [1]、-    常规文件即f(file)

        [2]、d    directory,目录文件;

        [3]、b    block device,块设备文件,支持以“block”为单位进行随机访问

        [4]、c    character device,字符设备文件,支持以“character”为单位进行线性访问

                    major number:主设备号,用于标识设备类型,进而确定要加载的驱动程序

                    minor number:次设备号,用于标识同一类型中的不同的设备;

                        8位二进制:0-255

        [5]、l    symbolic link,符号链接文件;

        [6]、p    pipe,命名管道;

        [7]、s    socket,套接字文件;

    (五)、文件名(目录也属于文件的一种)使用法则:

        [1]、严格区分字符大小写:file1, File1, FILE1

        [2]、目录也是文件,在同一路径下,两个文件不能同名;

        [3]、支持使用除/以外的任意字符【但是不推荐使用特殊字符】

        [4]、最长不能超过255个字符;

原创文章,作者:小江,如若转载,请注明出处:http://www.178linux.com/34856

赞 (0)
小江小江
上一篇 2016-08-15 12:06
下一篇 2016-08-15 12:06

相关推荐

  • grub知识与故障排除

    知识点回顾 at 任务的存放位置:/var/spool/at/ crond 任务存放位置:/var/spool/cron/username 查看服务有没有运行 centos6:  service  atd  status    chkconfig –list atd chkconfig atd o…

    Linux干货 2016-09-13
  • 9月9日,系统启动文件恢复与内核编译

    1、破解root口令,并为grub设置保护功能 进入grub界面,输入a键,在输入1,进入单用户界面,进入系统后修改密码。 2、破坏本机grub stage1,而后在救援模式下修复之 3、删除vmlinuz和initramfs文件,无法启动,恢复之 (1)安装kernel内核 (2)光盘寻找内核,在复制到/boot目录下,在修改成对应的,系统会重启两次 (3…

    Linux干货 2016-09-13
  • 计算机基础知识及服务器介绍

    现代计算机组成 根据冯·诺依曼结构体系计算机有五大部件组成: 运算器、控制器、存储器、输入设备、输出设备 CPU=运算器+控制器 运算器由算术逻辑单元(ALU)、累加器、状态寄存器、通用寄存器组等组成。 算术逻辑运算单元(ALU)的基本功能为加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、求补等操作。 运算器只能进行二进制运算、逻辑运算 控制器…

    Linux干货 2016-06-09
  • N22-第5周博客作业

    1、显示当前系统上root、fedora或user1用户的默认shell; grep -E "^(root|fedora|user1)\>" /etc/passwd | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某单…

    Linux干货 2016-12-05
  • Linux的简介

    Linux的简介 冯诺依曼体系结构 主要特点:使用存储器,采用二进制(据说,采用二进制的灵感来源于中国的八卦,2变4,4变8…) 体系介绍:其由几大部分组成,输入设备,运算器,控制器,内部存储器,外部存储器,输出设备。 目前,输入设备就是指键盘鼠标, 运算器和控制器现在统称CPU。其实已经内置了两个功能。 内部存储器就是内存,某种意义上,缓存也算…

    Linux干货 2016-10-28
  • 优云Automation:实现IT服务弹性伸缩的利器

    随着互联网业务快速持续增长,IT资源使用量按需变化成为常态,这就要求信息部门能快速响应资源使用的变化要求,对运维提出不小挑战。比如电商、在线教育等企业经常推出一些秒杀、抢红包活动,在特定时间段对资源的利用处于高峰期,之后基本处于空闲。 几年前,我们从申请采购到应用部署上线都只能人工操作,需要提前几个月开始规划。如今通过云平台能很好实现资源按需动态管理,运维人…

    系统运维 2017-03-15