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

相关推荐

  • shell脚本终结篇——数组

    数组定义: 变量:存储单个元素的内存空间 数组:存储多个元素的连续的内存空间,相当于多个变量的集合 数组名和索引: 索引:编号从0开始,属于数值索引 注意:索引可支持使用自定义的格式,而不仅仅是数值格式,自定义格式的数组即为关联数组,bash4.0版本之后开始支持 bash的数组支持稀疏格式(索引不连续) 声明数组: declare -a ARRAY_NAM…

    Linux干货 2016-08-24
  • Linux下常用压缩工具总结

    gzip: 1)只能针对普通文件进行压缩,对文件夹、符号链接无效。 2)如果想对多个文件一起压缩并打包,gzip是无法办到的,需要结合tar进行 [root@mysql-master databackup]# ll 总用量 32 drwx—— 2 root root 4096&nb…

    Linux干货 2016-12-05
  • 0806文本处理工具

    ———- 文件查看工具 ———- cat:    cat [OPTION]… [FILE]…   //查看文本文件内容,一般后面跟文件名(相对路径),或者是文件名(绝对路径) -n 加行号 -b 加行号,…

    Linux干货 2016-08-07
  • grep命令

    grep命令:grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来;grep搜索的结果被送到屏幕,不影响原文件内容。Unix的grep家族包括grep、egrep和fgrep…

    Linux干货 2016-08-08
  • LVS调度方法

    lvs scheduler:     根据其调度时是否考虑后端主机的当前负载,可分为静态方法和动态方法     静态方法:仅根据算法本身进行调度:         RR:Round Ronin 轮询         WRR:Weighted…

    Linux干货 2017-01-10
  • Vim和nano的区别

    Vim和nano的区别 Linux下有很多文本编辑器,其中系统(不管哪个分支)都会自带nano和vim这两个最基本的编辑器。vim相当于vim的升级版。今天将重点分析一下vim与nano的各自功能及区别。 1.nano 直接在命令行中敲入nano newfile即可打开文件或新建文件。 可以看到第一行反白介绍了nano的版本号以及被编辑的文件名称。接下来就是…

    2017-08-05