• Linux基础和帮助


    1.终端terminal

      (1)设备终端  键盘,鼠标,显示器

      (2)物理终端(/dev/console)  控制台concole

      (3)串行终端(/dev/ttyS#)  ttyS

      (4)虚拟终端(tty:teletypewriters,/dev/tty#)

        tty可以有n个,Ctrl+Alt+F#

      (5)图形终端(/dev/tty7)startx,xwindows

        CentOS6:Ctrl+Alt+F7

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

      (6)伪终端(pty:pseudo-tty,/dev/pty/#)

        pty,SSH远程连接

      查看当前终端设备命令:tty

    2.命令提示符

      (1)命令提示符:prompt

        [root@localhost~]#

        # 代表管理员

        $ 代表普通用户

      (2)显示提示符格式

        [root@localhost~]#echo $PS1

      (3)修改提示符格式

        PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"

        PS1="\[\e[1;32m\][\[\e[0m\]\t \[\e[1;33m\]\u\[\e[36m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$"

          \e 控制符\033      \u 当前用户
          \h 主机名简称     \H 主机名
          \w 当前工作目录      \W 当前工作目录基名
          \t 24小时时间格式    \T 12小时时间格式
          \! 命令历史数       \# 开机后命令历史数

    3.Hash缓存表

      系统初始hash表为空,当外部命令执行时,默认会从PATH路径下寻找该命令,找到后会将这条命令的路径记录到hash表中,当再次使用该命令时,shell解释器首先会查看hash表,存在将执行之,如果不存在,将会去PATH路径下寻找,利用hash缓存表可大大提高命令的调用速率。

      hash常见用法

        hash  显示hash缓存表

        hash -l 显示hash缓存,可作为输入使用

        hash -p path name   将命令全路径path起别名为name

        hash -t name   打印缓存中name的路径

        hash -d name   清除name缓存

        hash -r   清除缓存 

    4.命令别名

      (1)显示当前shell进程所有可用的命令

        alias

      (2)定义别名NAME,其相当于执行命令VALUE

        alias NAME='VALUE'

        以上仅对当前shell进程生效,如果想永久生效,要定义在配置文件中:

        仅对当前用户:~/.bashrc

        对所有用户生效:/etc/bashrc

        编辑以上配置文件后不会立即生效,可以以下命令重新读取配置文件使其生效:

        souce /path/to/config_file

        . /path/to/config_file

      (3)撤销别名:unalias

        unalisa [-a] name [name...]

          -a  取消所有别名

        如果别名同原命令同名,如要执行原命令,可使用

        \ALIASNAME

        "ALIASNAME"

        'ALIASNAME'

        command ALIASNAME

        /path/command

    5.日期与时间

      Linux的两种时钟

        系统时钟:由Linux内核通过CPU的工作频率进行的

        硬件时钟:主板

      相关命令:

        date  显示和设置系统时间

            date +%s

            date -d @1509536066

        hwclock,clock:显示硬件时钟

          -s,--hctosys  以硬件时钟为准,校正系统时间

          -w,--systohc  以系统时钟为准,校正硬件时间

      时区:/etc/localtime

      显示日历:cal -y

    6.命令行历史

      重复前一个命令,有4种方法

        重复前一个命令使用上方向键,并回车执行
        按 !! 并回车执行
        输入 !-1 并回车执行
        按 Ctrl+p 并回车执行

      !:0  执行前一条命令(去除参数)

      Ctrl + n  显示当前历史中的下一条命令,但不执行

      Ctrl + j  执行当前命令

      !n   执行history命令输出对应序号n的命令

      !-n  执行history历史中倒数第n个命令

      !string 重复前一个以“string”开头的命令

      !?string 重复前一个包含string的命令

      !string:p 仅打印命令历史,而不执行

      !$:p 打印输出 !$ (上一条命令的最后一个参数)的内容

      !*:p 打印输出 !*(上一条命令的所有参数)的内容

      ^string 删除上一条命令中的第一个string

      ^string1^string2 将上一条命令中的第一个string1替换为string2

      !:gs/string1/string2 将上一条命令中所有的string1都替换为 string2

      Ctrl + r  在历史命令中搜索命令

      Ctrl + r  从历史命令搜索中退出

      要重新调用上一条命令的最后一个参数:

        !$ 用!$表示

        ESC,. (点击ESC键后松开,再点击 . 键)  

        ALT+.  (按住ALT键同时点击 . 键)  

    7.简单命令

      (1)关机与重启

        关机:halt , poweroff

        重启:reboot

            -f:强制,不调用shutdown

            -p:切断电源

        关机或重启:shutdown

            shutdown [OPTION]...[TIME] [MESSAGE]

              -r  reboot即重启

              -h  halt即关机

              -c  cancel 取消关机

              TIME:无指定,默认相当于+1(CentOS7)

                now:立刻,相当于+0

                +m:相对时间表示法,几分钟之后;例如 +3

                hh:mm:绝对时间表示,指明具体时间

      (2)用户登录信息查看命令:

        whoami:显示当前登录有效用户

        who:系统当前所有的登录会话

        w:系统当前所有的登录会话及所做的操作

      (3)screen命令:

          screen -S [SESSION]  创建新的screen会话

          screen -x [SESSION]  加入screen会话

          screen -ls  显示所有已经打开的screen会话

          screen -r [SESSION]  恢复某screen会话

          exit  退出并关闭screen会话

          Ctrl+a,d 剥离当前screen会话

      (4)echo命令:

        echo [-neE] [字符串]

          -E (默认)不支持 \ 解释功能

          -n  不自动换行

          -e  启用 \ 字符解释功能

            \a 发出警告声

            \b 退格键

            \c 最后不加上换行符号

            \n 换行且光标移至行首

            \r 回车,即光标移至行首,但不换行

            \t 插入tab

            \\ 插入\字符

      (5)history命令:

        history [-c] [-d offset] [n]

        history -anrw [filename]

        history -ps arg [arg...]

          -c  清空命令历史

          -d offset  删除历史中指定的第offset个命令

          n   显示最近的n条历史命令

          -a  追加本次会话新执行的命令历史列表至历史文件

          -r   读历史文件附加到历史列表

          -w  保存历史列表到指定的历史文件

          -n   读历史文件中未读过的行到历史列表中

          -p   展开历史参数成多行,但不存在历史列表中

          -s   展开历史参数成一行,附加在历史列表中

        命令历史相关环境变量

          HISTSIZE:命令历史记录的条数

          HISTFILE:指定历史文件,默认为~/.bash_history

          HISTFILESIZE:命令历史文件记录历史的条数

          HISTTIMEFORMAT="%F %T" 显示时间

          HISTIGNORE="str1:str2*...." 忽略str1命令,str2开头的命令

          HISTCONTROL:控制命令历史的记录方式

            ignoredups:默认,忽略重复的命令,连续且相同为“重复”

            ignorespace:忽略所有以空白字符开头的命令

            ignoreboth:相当于ignoredups,ignorespace的组合

          相关变量存放在 /etc/profile 或 ~/bash_profile

    8.bash快捷键

      Ctrl + l 清屏,相当于clear命令

      Ctrl + o 执行当前命令,并重新显示本命令

      Ctrl + s 阻止屏幕输出,锁定

      Ctrl + q 允许屏幕输出

      Ctrl + c 终止命令

      Ctrl + z 挂起命令

      Ctrl + a 光标移到命令行首,相当于Home

      Ctrl + e 光标移到命令行尾,相当于End

      Ctrl + f 光标向右移动一个字符

      Ctrl + b 光标向左移动一个字符

      Alt + f 光标向右移动一个单词尾

      Alt + b 光标向左移动一个单词首

      Ctrl + xx 光标在命令行首和光标之间移动

      Ctrl + u 从光标处删除至命令行首

      Ctrl + k 从光标处删除至命令行尾

      Alt + r 删除当前整行

      Ctrl + w 从光标处向左删除至单词首

      Alt + d 从光标处向右删除至单词尾

      Ctrl + d 删除光标处的一个字符

      Ctrl + h 删除光标前的一个字符

      Ctrl + y 将删除的字符粘贴至光标后

      Alt + c 从光标处开始向右更改为首字母大写的单词

      Alt + u 从光标处开始,将右边一个单词更改为大写

      Alt + l 从光标处开始,将右边一个单词更改为小写

      Ctrl + t 交换光标处和之前的字符位置

      Alt + t 交换光标处和之前的单词位置

      Alt + N 提示输入指定字符后,重复显示该字符N次

      注意:Alt组合快捷键经常和其它软件冲突

    9.获得帮助

      (1)whatis  显示命令的简短描述

        刚安装后不可立即使用,可用makewhatis | mandb 制作数据库

        使用示例:what cal 或 man -f cal

      (2)获得帮助

        内部命令:help COMMAND 或 man bash

        外部命令:

            (1) COMMAND --help 或 COMMAND -h 

            (2) 使用手册(manual)  man COMMAND

            (3) 信息页  info COMMAND

            (4) 程序自身的帮助文档  README,INSTALL,ChangeLog

            (5) 程序官方文档

            (6) 发行版的官方文档

            (7) Google

      (3)man命令

        提供命令帮助的文件,手册页存放在/usr/share/man,配置文件 /etc/man.config | man_db.conf,如果支持中文,还需安装包man-pages-zh-CN

        (1) man章节 

         man 1 man

          1:用户命令;

          2:系统调用;

          3:C库调用;

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

          5:配置文件格式;

          6:游戏;

          7:杂项;

          8:管理类命令;

          9:Linux内核API

        (2) man帮助段落说明

          NAME 名称及简要说明

          SYNOPSIS 用法格式说明

            [] 可选内容
            <> 必选内容
            a|b 二选一
            { } 分组
            ... 同一内容可出现多次

          DESCRIPTION 详细说明

          OPTIONS 选项说明

          EXAMPLES 示例

          FILES 相关文件

          AUTHOR 作者

          COPYRIGHT 版本信息

          REPORTING BUGS bug信息

          SEE ALSO 其它帮助参考

        (3) 相关命令

          man [章节] keyword  查看man手册页

          man -a keywork    列出所有帮助

          man -k keyword    列出所有匹配的页面

          man -f keywork     相当于whatis

          man -w [章节] keywork  打印man帮助文件的路径

        (4) 手册中操作方法

          space:向下翻屏

          b:向上翻屏

          d:向下翻半屏

          u:向上翻半屏

          q:退出

          #:跳转至第#行

          1G:回到文件首部

          G:翻至文件尾部

          /KEYWORD:搜索KEYWORD关键字,从当前位置向下搜,不区分大小写;按 n 搜索下一个,N 搜索上一个

          ?KEYWORD:搜索KEYWORD关键字,从当前位置向上搜,不区分大小写;按 n 表示搜索方向同向的下一个,N 表示搜索方向反向搜索上一个    

  • 相关阅读:
    禁止微信内置浏览器调整字体大小
    常用EXE文件反编译工具【转】
    C++发送HTTP请求---亲测可行(转)
    Cesium简介 [转]
    WebGL可视化地球和地图引擎:Cesium.js
    HTML5 canvas图形库 RGraph【转】
    [GitHub开源]基于HTML5实现的轻量级Google Earth三维地图引擎,带你畅游世界 【转】
    OpenGL实现多层绘制(Layered Rendering) [转]
    深度剖析OpenGL ES中的多线程和多窗口渲染技术
    OOP几大原则【转】
  • 原文地址:https://www.cnblogs.com/hovin/p/11556249.html
Copyright © 2020-2023  润新知