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

相关推荐

  • 设计模式 ( 十九 ) 模板方法模式Template method(类行为型)

    设计模式 ( 十九 ) 模板方法模式Template method(类行为型) 1.概述 在面向对象开发过程中,通常我们会遇到这样的一个问题:我们知道一个算法所需的关键步骤,并确定了这些步骤的执行顺序。但是某些步骤的具体实现是未知的,或者说某些步骤的实现与具体的环境相关。例子1:银行业务办理流程在银行办理业务时,一般都包含几个基本固定步骤:取号排队->…

    Linux干货 2015-04-07
  • 网络服务之Nginx

      在之前一篇博客中我们讲述了httpd网络服务器,那么httpd是个非常稳定安全的一个服务器,这次我们介绍一个新的网络服务器—-nginx。   Nginx 是俄罗斯人编写的十分轻量级的 HTTP 服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器(我们主要围绕这两…

    2017-06-07
  • linux网络属性命令操作介绍(第十一天)

            linux网络属性常用命令有ifconfig\route\ip命令,centos7 的还是nmcli\nmtui。     网络属性的三大文件:修改DNS的文件/etc/resolv.conf  、修改网卡IP地址/etc/sysconfig/…

    Linux干货 2016-06-01
  • 8.10作业

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。 echo  "your host is `hostname` " echo  "ip address is `ifconfig | sed -n…

    Linux干货 2016-08-15
  • http://www.jianshu.com/p/f1d0739b141f

    Linux干货 2017-07-30
  • 【N25第六周作业】VIM、crontab、简单脚本

    请详细总结vim编辑器的使用并完成以下练习题 第二周有写过vim的用法,请查看连接: 周期性任务计划:cron 服务程序: cronie:主程序包,提供了crond守护进程及相关辅助工具; 确保crond守护进程(daemon)处于运行状态: CentOS 7: systemctl  status  cron…

    Linux干货 2016-12-27