zoukankan      html  css  js  c++  java
  • 3-1 查看帮助,命令历史与快捷键

    查看帮助,命令历史与快捷键

    帮助和编码

    命令别名与命令细节

    在环境中使用alias NAME="COMMAND [ARG]"是保存不住的,需要写入bash的配置文件,个人的配置文件为.bashrc,更改完配置文件后,需要重新读取配置文件

    source /path/to/config_file
    . /path/to/config_file
    #取消别名
    unalias NAME
    #别名与命令同名时使用原命令
    COMMAND
    "COMMAND"
    'COMMAND'
    command COMMAND
    /path/COMMAND
    

    命令的不同风格:

    ls -l -a            #短选项:UNIX风格选项,两个短选项可以一块写,长短选项不能混写
    cat --help          #长选项:GNU风格选项
    ip a                #BSD风格选项:一个字母
    

    命令使用的小技巧:
    取消和结束命令执行:Ctrl+c(强制停止),Ctrl+d(结束程序)

    echo "welcome";ls       #多个命令可以使用;号隔开 
    echo "https://kernal
    >.org"                  #一个命令可以使用分成多行  
    type -a                 #查看这个命令的所有内外部命令
    

    不同引号之间的区别

    echo 'echo $PATH'            #输出echo $PATH
    echo "echo $PATH"            #输出echo 环境变量的值
    echo `echo $PATH`            #仅输出环境变量的值与$()用法一致
    echo {1..100}                #自动展开1-100的数
    echo {1..100..2}             #1-100步进为2
    echo {A-z}                   #将字符按照ascii的顺序展开所以中间会夹杂几个符号
    echo {a-Z}                   #会将字符按照ascii反向显示
    echo {000..100}              #定义格式,可以将数字输出都为3位数
    echo {a,b}{1,2,3}            #完成笛卡尔乘积
    

    单引号为强引用,直接输出,不转换任何值
    双引号转换变量
    反响单引号会识别命令并执行,也会转换变量的值
    同时$(COMMAND)的使用方式与``相同

    tab键可以命令补全和路径补全,当有两个选择时按两下会将可选项都列出来,CentOS7可以将字命令补全,现在有一个大命令带子命令的发展趋势

    bash快捷键

    Ctrl+s:锁定屏幕,键盘可以输入,只是不现实了
    Ctrl+q:解锁屏幕
    Ctrl+l:清屏,相当于clear命令
    Ctrl+c:终止命令
    Ctrl+z:挂起命令
    Ctrl+a:光标移动到行首,相当于Home
    Ctrl+e:光标移动到行尾,相当于End
    Ctrl+xx:命令在行首和光标之间移动
    Ctrl+u:从光标处删除至命令行首
    Ctrl+k:从光标处删除至命令行尾
    Alt+r:删除当前整行
    Alt+b:光标向左删除一个单词
    ALt+f:光标向右删除一个单词
    Alt+#,$:#为数字,$为字母,可以将$重复#次打印在屏幕上
    ...

    获取帮助

    whatis COMMAND可以查询简单的命令时什么,也可以显示命令在帮助手册第几章。当刚刚装好系统的时候whatis时不能用的,需要手动建立数据库,CentOS6使用makewhatis命令,CentOS7与Ubuntu使用mandb命令。

    whatis          #查看命令基本作用
    mandb           #创建whatis数据库CentOS7和Ubuntu命令
    makewhatis      #创建whatis数据库CentOS6
    

    当同名的命令或文件都有man帮助时(例如passwd命令和passwd文件说明)有限打开章节数最小的帮助页面

    要想查看对应章节数的内容,需要man # COMMAND其中#为章节数
    用户手册章节:

    1. 用户命令
    2. 系统调用
    3. C库调用
    4. 设备文件及特殊文件
    5. 配置文件格式
    6. 游戏
    7. 杂项
    8. 管理类命令
    9. Linux内核API

    man命令的操作方法

    space:向文件尾部翻页
    b:向文件首部翻屏
    d:向文件尾部翻半屏
    u:向文件首部翻半屏
    q:退出
    $:跳转至第$行
    1G或gg:回到文件首部
    G:翻至文件尾部
    /STRING:搜索STRING字符串,n向下搜索,N向上搜索
    ?STRING:向上搜索,n向上搜索,N向下搜索

    -a:可以打开参数的所有文档,退出第一个进入第二个,一次向下
    -k:可以列出包含参数的所有章节
    -w:打印帮助的路径

    info查看帮助

    可以进入相关文档,进入二级目录使用回车等

    图形界面也有帮助文档

    内部命令获取帮助可以使用help COMMAND

    到相关软件的官方网站获取帮助

    例如:

    1. www.nginx.org/en/docs
    2. www.httpd.apache.org
    3. mariadb.com
    4. dev.mysql.com
    5. tomcat.appche.org
    6. www.python.org

    ehco命令用法与编码

    echo命令

    echo:回显,从标准输出显示,并自动在结束时加换行符
    -n:不加换行符
    -e:转义其他字符,在含有转义字符时应该加上引号  #更改颜色echo -e "33[31mXXXXX33[0m"
    
    :换行 c:压缩换行 	:制表符 :八进制 x:十六进制 
    man ascii           #查看ascii表
    

    字符集和编码

    Unicode与UTF-8

    Unicode只是字符集,储存时为了节省空间使用UTF-8编码,UTF-8是可变长度储存,从一个字节到4个字节,UTF-32是全部使用4个字节存储,UTF-16是2个或4个字节,比较浪费空间。
    同时UTF-8与Unicode也有相互转化的对应方式。

    命令历史

    退出bash时会将内存中的命令历史存入.bash_history,history可以查看命令历史。

    history
    !STRING               #执行以STRING开头的历史命令
    !?STRING              #重复前一个包含STRING的命令
    !STRING:p             #仅打印民联历史,而不执行
    !!                    #执行钱一条命令
    !n                    #执行hsitory历史输出对应序号n命令
    !-#                   #执行前#条命令
    !:0                   #执行上一条命令去除参数
    !:#                   #取上一条命令的第几个参数(0为命令)
    !*                    #上条命令的所有参数
    !$                    #上调命令的最后一个参数
    ^STRING               #删除上调命令中的第一个STRING
    ^STING1^STRING2       #将上条命令中的所有STRING1替换为STRING2
    !:gs/STRING1/STRING2  #将上调命令中的所有STRING1替换为STRING2
    
    -c:删除所有命令历史 
    -n:显示最近的n条历史
    -a:追加本次绘画新执行的命令历史列表至历史文件
    ...
    
    $HISTSIZE:命令历史记录的条数
    $HISTFILE:指定历史文件,默认为~/.bash_history
    $HISTFILESIZE:命令历史文件记录历史的条数
    $HISTTIMEFORMAT="%F %T ":显示时间
    $HISTIGNORE="str1:str2"忽略str1命令,str2开头的历史
    控制命令历史的记录方式:
    $HISTCONTROL:
    ignoredups:默认,忽略重复的命令,连续且相同为“重复”
    ignorespace:忽略所有以空白开头的命令
    ignoreboth:相当于ignoredups,ignorespace的组合
    erasedups:删除重复命令
    export 变量名=“值”
    #存放在/etc/profile 或 ~/..bash_profile中前者时全局作用,后者只有对应用户变量
    

    显示与修改时间

    date:显示系统时间
    +%F:显示年月日
    +%T:显示时分秒
    +%:有各种格式可以查看帮助查询
    -d:'-1 day'等方式显示指定时间并输出
    -u:显示0时区时间
    
    clock:或hwclock:硬件时间
    -s:将系统时间设置为硬件时间
    -w:将硬件时间设置为系统时间
    
    ntpdate IP:同步为指定服务器的时间
    
    ctl:显示日历(1752年9月)
    

    定时关机

    shutdown -r now                                 #现在重启计算机
    shutdwon -h +n                                  #过n分钟后关闭计算机
    shutdown -c                                     #取消关机计划
    shutdown -h +15 "shutdown after 15minutes"      #15分钟后关闭计算机并提示“15分钟后关机”!注意:超过15分钟的提示将不再显示
    

    设置时区

    timedatectl                     #设置时区的命令
    timedatectl list-timezones      #列出所有时区
    timedatectl set-timezone        #设置时区
    

    /etc/issue文件

    这个文件是登陆终端前显示的相关信息,通过一定语法,将一定信息显示在登陆之前。
    :hostname信息
    m:等价于uname -m显示主机架构
    :等价于unmae -r显示内核版本
    :显示时间
    s:等价于uname -s显示系统名称
    l:显示终端

    screen命令

    screen可以打开一个独立的屏幕,终端中断连接后也不会终止命令,当编译内核时或者需要长时间运行不间断命令时需要。

    screen
    screen -S NAME              #打开一个共享屏幕
    screen -x NAME              #需要连接到同一机器,且用户相同,即可同步,也可以看到对方的操作
    Ctrl+a,d                    #临时剥离当前绘画,可以使用-r回复
    screen -r                   #恢复某screen绘画
    screen -ls                  #将现有的screen窗口都列出来
    
  • 相关阅读:
    [最新]制作u盘引导安装ubuntu11.04
    js记录
    下面的代码有什么不妥之处
    Oracle常用命令
    蓝天下,献给你,html5
    无意义的小东西
    sql中,把varchar类型转换为int型,然后进行排序
    身边的人,来来去去
    不一定能写出来的求素数问题
    写在第一百篇博客之际
  • 原文地址:https://www.cnblogs.com/kjalbert/p/11577231.html
Copyright © 2011-2022 走看看