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 08:57
下一篇 2017-03-28 09:55

相关推荐

  • 实例;编译安装apache 2.2,并启动此服务

    基于c语言的源代码编译安装,通常有三个步骤     ./configure         (1)通过选项传递参数,指定启用特性,安装路径等:执行时会参考用户的指定以及makefile.in文件生成makefile.  &nbsp…

    Linux干货 2016-08-24
  • Linux系统发展史

    引言:     Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具…

    Linux干货 2016-10-19
  • Centos 5\6的启动流程简介

     Centos 5\6的启动流程简介图如下  第三步说明:磁盘的第一个扇区512字节的前446是bootloader,与此446字节与grub Stage1的446字节是一样的,主要功能是加载/boot/grup/目录下的文件     stage1.5加载相应用的文件系统文件并识别,如ext系列使用的e2fs…

    Linux干货 2016-06-03
  • 高级文件系统管理

    为用户设定配额  执行开始或取消配额:quotaon quotaoff  取消编辑配额:edqouta username  在shell中直接编辑:setquota usename 80000 100000 0 0 /foo  定义原始标准用户 :edquota -p user1 user2 实例如下: 配额的实现 1…

    Linux干货 2017-05-02
  • 加密通讯过程

    一次加密通讯的过程 1、client_hello   客户端发起请求,以明文传输请求信息,包含版本信息,加密套件候选列表,压缩算法候选列表,随机数,扩展字段等信息,相关信息如下: 支持的最高TSL协议版本version,从低到高依次 SSLv2 SSLv3 TLSv1 TLSv1.1 TLSv1.2,当前基本不再使用低于 TLSv1 的版本 客户端支持的加密…

    Linux干货 2017-02-07
  • ansible基础应用

    ansible基础 一、运维主要工作 ansible聚集以上功能于一身,能够完整轻易的实现应用部署和批量命令功能,适用于主机数量不太多,再大的用puppet。 二、ansible特性 (1)模块化:调用特定的模块,完成特定任务; (2)基于python语言实现,由paramiko,PYYAML和JINJa2三个关键模块组成 (3)部署简单:agentless…

    Linux干货 2017-01-04