码迷,mamicode.com
首页 > 系统相关 > 详细

Linux 基础知识 --> Bash

时间:2016-05-01 09:55:20      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:bash

一、什么是shell?

    1、shell:外壳

        GUI:Gnome、KDE、Xface

        CLI:sh、csh、ksh、bash、tcsh、zsh

    2、prompt,命令提示符

        #:root用户

        $:普通用户

    3、子shell?

        在shell中直接输出bash,即可进入其子shell,且父shell和子shell互不相


二、Bash特性

(1)命令行编辑

        Ctrl+a:命令行光标跳到命令行首

        Ctrl+e:命令行光标跳到命令行尾

        Ctrl+u: 删除命令行光标至命令行首的内容

        Ctrl+k: 删除命令行光标至命令行尾的内容

        Ctrl+l: 清屏

        Ctrl+d:删除当前命令行光标处的内容

        Ctrl+p:显示上一条命令(或上下箭头)

(2)强引用&弱引用&命令替换

        ‘‘: 强引用,不完成变量替换

            echo ‘User shell is ${SHELL}‘,输出结果为:User shell is ${SHELL},未完成变量替换

        "": 弱引用,可以实现变量替换(变量替换:将变量名替换为变量值)

            echo "User shell is ${SHELL}",输出结果为:User shell is /bin/bash,完成变量替换

      ``|$():命令替换,在命令中嵌套一个子命令并将其替换成输出结果

            echo "Work dir is $(pwd)",输出结果为:Work dir is /root

            echo "Work dir is `pwd`",输出结果为:Work dir is /root

            touch file$(date +-%Y-%m-%d-%H-%M-%S).txt,输出结果为:file-2016-05-01-09-12-07.txt

(3)文件通配符,globbing(man 7)

        *:匹配任意长度的任意字符

        ?:匹配任意单个字符

        []:匹配指定范围内的任意单个字符,常用范围举例:

            大写字母:[A-Z]、[:upper:]

            小写字母:[a-z]、[:lower:]

            大小写字母:[a-zA-Z]、[:alpha:]

            空白字符:[:space:]

            数字:[0-9]、[:digit:]

            数字和大小写字母:[0-9a-zA-Z]、[:alnum:]

            标点符号:[[:punct:]]

        [^]:匹配指定范围外的任意单个字符

(4)命令别名

        定义别名:alias CMDALIAS=‘COMMAND [options] [arguments]‘

        查看别名:alias

        取消别名:unalias CMDALIAS

        使用命令本身:\Command(在该命令存在命令别名时)

        将命令别名写入bash的配置文件中,永久有效,否则只在当前Shell的生命周期中有效

(5)命令补全

        补全功能键:TAB

        命令补全:搜索PATH环境变量所指定每个路径下

        路径补全:搜索起始路径下

        

本文出自 “Tornado” 博客,谢绝转载!

Linux 基础知识 --> Bash

标签:bash

原文地址:http://tornado0826.blog.51cto.com/11468227/1769289

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