码迷,mamicode.com
首页 > 其他好文 > 详细

bash的基础特性

时间:2019-01-13 02:00:45      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:oca   结果   令行   列表   ctrl   删除行   local   否则   不同   

bash的基础特性:


    命令补全:
            Shell程序在接收到用户执行命令的请求,分析完成之后,最左侧的字符串会被当作命令;

    命令查找机制:
            查找内部命令;
                根据PATH环境变量中设定的目录,自左而右逐个搜索目录下的文件名;
                给定的打头字符串如果能唯一标识某目录程序文件,则直接补全;
                不能唯一标识某目录程序文件,再击tab键一次,会给出列表;

路径补全:
            在给定的起始路径下,以对应路径下的打头字符串来逐一匹配起始路径下的每个文件;
            tab:
            如果能唯一标识,则直接补全;
            否则,再一次tab,给出列表;

命令行展开
~:自动展开为用户的家目录,或指定的用户的家目录;
{}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径:
例如:/tmp/{a,b} 相当于 /tmp/a /tmp/b


问题1:如何创建/tmp/x/y1, /tmp/x/y2, /tmp/x/y1/a, /tmp/x/y1/b  ?
                ~]# mkdir -pv /tmp/x/{y1/{a,b},y2}

问题2:如何创建a_c,a_d,b_c,b_d;

        ~]# mkdir {a,b}_{c,d} -v
            mkdir: created directory `a_c‘
            mkdir: created directory `a_d‘
            mkdir: created directory `b_c‘
            mkdir: created directory `b_d‘

bash的命令执行状态结果

            bash通过状态返回值来输出此结果;
            成功:0
            失败:1-255
    命令执行完成之后,其状态返回值保存于bash的特殊变量$?中;
            ~]# pwd
            /root
        ~]# echo $?
                0

        命令正常执行时,有的还会有命令返回值;
                根据命令及其功能不同,结果各不相同;

        引用命令的执行结果:
            $(COMMAND)
            或’COMMAND‘
        Bash的基于特性:引用
            强引用:‘’
            弱引用:“”
            命令引用:‘’

    实例: 
            [root@localhost tmp]# ls
            a  hello

        [root@localhost tmp]# mkdir $(date +%H-%M-%S-%T)
        [root@localhost tmp]# ls
        20-51-40-20:51:40  a  hello

Bash基础特性:快捷键
Ctrl+a:跳转至命令行行首
Ctrl+e:跳转至命令行行尾
Ctrl+u:删除行首至光标所在处之间的所有字符;
Ctrl+k:删除光标所在处至行尾的所有字符;
Ctrl+l:清屏,相当于clear

bash的基础特性

标签:oca   结果   令行   列表   ctrl   删除行   local   否则   不同   

原文地址:http://blog.51cto.com/itxuezhe/2342041

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!