Linux上bash的部分基础特性:

命令补全: tab

     shell程序在接收到用户执行命令的请求,分析完成后,最左侧的字符串会被当做命令

命令查找机制:

    查找内部命令:

    根据PATH环境变量中设定的目录,自左而右逐个搜索目录下的文件名

    给定的打头字符如果能唯一标识某命令文件程序,则直接补全

    给定的打头字符如果不能唯一标识某命令文件程序,在一次tab,会给出列表

路径补全:tab

在给定的起始路径下,以对应路径下的打头字串来逐一匹配其实路径下的每个文件

    如果能唯一标识,则直接补全

    否则,再一次tab,给出列表

双击Tab:

        /2Tab  显示所有根目录下一级目录,包括隐藏目录

        ./2Tab  当前目录下子目录,包括隐藏目录         

        *2Tab  当前目录下子目录,不包括隐藏目录        

        ~2Tab  所有用户列表

        $2Tab  所有变量  

        @2Tab  /etc/hosts记录   (CentOS7不支持)

        =2Tab  相当于ls A  CentOS7 不支持)

 

    mkdir:新建一个目录

        mkdir -p:自动按需创建父目录

         -v:显示详细过程

         -m:直接给定权限

注意:路径基名方为命令的作用对象,基名之前的路径必须得存在      

        rmdir: 删除目录

    rmdir -p:删除某目录后,如果其父目录为空,则一并删除

         -v:显示过程

命令行展开:

  ~:自动展开为用户的家目录,或指定的用户的家目录

  {}: 可承载一个以逗号分隔的路径列表,并能够将其展开多个路径

    例如:/tmp/{a,b}相当于 /tmp/a /tmp/b

命令的执行状态结果:

   bash通过状态返回值来输出次结果

       成功:0

       失败:1-255

   命令执行完成后,其状态返回值保存于bash的特殊变量$?

引用:

     强引用:”   

     弱引用:””   

     命令引用:“

 

bash快捷键:

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

   Ctrl + c  终止命令

   Ctrl + s  锁定屏幕

   Ctrl + q  解锁

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

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

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

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

cp命令:copy

   单源复制:cp [OPTION]… [-T] SOURCE DEST

      如果DEST不存在:则事先创建次文件,并复制源文件的数据流至DEST

      如果DEST存在:

      如果DEST是非目录文件:则覆盖目标文件

      如果DEST目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流

   

   多源复制:cp [OPTION]… SOURCE… DIRECTORY

      如果DEST不存在错误

      如果DEST存在:

      如果DEST是非目录文件:错误

      如果DEST是目录文件:分别复制每个文件至目录中,并保持原名

            cp  [OPTION]… -t DIRECTORY SOURCE…

常用选项:

      -i:交互式复制,即覆盖前提醒用户确认

      -f:强制覆盖目标文件

      -r:递归复制目录 

 

history:命令行历史

命令历史一般记录在.bash_history文件中,默认记录1000

当前shell中的历史记录会被记录在内存中,只有退出之后才会保存在.bash_history

-c:清空命令历史

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

n:显示最近的第n条历史

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

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

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

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

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

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

HISTSIZE 修改history存储条数

    HISTFILE 指定历史文件的存放位置,默认为~/.bash_history

    HISTFILESIZE 指定历史文件的命令的存储条数

    HISTTIMEFORMAT=”%F %T”  显示每条命令的具体执行时间

    HISTIGNORE=”str1:str2″  把某些命令敏感的字符串给屏蔽掉不予显示

控制命令历史记录方式:

环境变量:HISTCONTROL

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

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

ignoreboth  相当于ignoredups, ignorespace的组合

erasedups   删除重复命令

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

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


总结:

对于命令与快捷键一定要背熟,多实际操作几次,能更好的加深印象。

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

(0)
Linux.rookieLinux.rookie
上一篇 2017-03-28
下一篇 2017-03-28

相关推荐

  • N25-第五周

    – 1     显示/boot/grub/grub.conf中以至少一个空白字符开头的行;     grep "^[[:space:]]\+" /boot/grub/grub.conf2 显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的…

    Linux干货 2017-01-02
  • Ansible (playbook)

    一、YAML 1.1 YAML介绍 YAML是一个可读性高的用来表达资料序列的格式。YAML参考了其他多种语言,包括:XML、C语言、Python、Perl以及电子邮件格式RFC2822等。Clark Evans在2001年在首次发表了这种语言,另外Ingy döt Net与Oren Ben-Kiki也是这语言的共同设计者。 YAML Ain’t Marku…

    Linux干货 2017-11-01
  • 基于LNMP架构添加Memcached支持,并验证其缓存结果

    一 Memcached简介 Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。它是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据可以是数据库调用、API调用或者是页面渲染的结果。 Memcached简洁而强大。它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的很多问题。它的API兼容大部分流…

    Linux干货 2016-12-12
  • iptables基础详解

    一.iptables基础认知二.iptables使用格式  一.iptables简介   1.Iptabels是与Linux内核集成的包过滤防火墙系统,几乎所有的linux发行版本都会包含Iptables的功能。如果 Linux 系统连接到因特网或LAN、服务器或连接 LAN 和因特网的代理服务器, 则Iptables有利于在 …

    2017-05-03
  • Linux 之LVM

    一 LVM 简介:     LVM是 Logical Volume Manager(逻辑卷管理)的简写,LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。LVM的工作原理其…

    Linux干货 2016-03-01
  • Linux简要发展史

    目录 Linux简述 Linux之父 Linux标志 企鹅的来源 Tux的来源 历史 Unix GNU BSD Minix Linux 主要特性 Linux内核版本 Linux发行版 Linux简述 ·         Linux是一套自由加开放源代码的类Unix操作系统,诞生于…

    Linux干货 2016-10-18