bash学习记录

bash:

管理员:  提示符#

普通用户:提示符$

 

环境变量

A=3(变量是指内存空间,A指的是内存空间的名称-变量标示符)

PS1  \u@\h:\w\$  \u用户名 \h主机名 \w工作目录的路径基名

# echo

引用一个变量: ${变量名};

 

    bash特性:

        命令有两种类型:

        builtin:在shell中实现的即为内置命令;

        外部命令:在文件系统上的某位置有一个与命令名称对应的可执行文件;

        如何判断:使用type命令。

 

    shell中的引用:

        '':强引用,变量替换不会进行

        "":弱引用,能够执行变量替换

        ``:命令引用,引用命令的执行结果,还有另外一种形式:$(命令)

 

        变量替换:${变量名}

 

    命令历史

        bash保存过去曾经执行过的命令列表

        当前shell进程保存在缓冲区中;

        缓冲区中的命令在shell退出时保存至文件中,家目录的.bash_history。

        使用上下箭头可以翻看此前执行过的命令:

        

        

    命令别名

        alias:显示当前shell中定义的所有别名:

        # alias 别名='原始命令'

        # unalias 别名

 

    

    bash快捷键

        ctrl+a:跳至命令行行首

        ctrl+e:   尾

        ctrl+u:清除命令行首至当前光标所在处的内容

        ctrl+k:清除命令行尾至光标所在处的内容

        ctrl+l:清屏,相当于clear命令

        ctrl+c:终止当前正在执行的进程

        ctrl+z:将当前命令送至后台

 

    bash补全

        命令补全:

        shell命令:内部,外部

        外部:在系统某路径下有一个可执行程序

        内部:

        PATH:是一组由冒号分割的命令

        使用tab键执行补全

        路径补全:在给出的打头路径补全;如果没有打头路径,则为当前;

 

    提供编程环境

        变量

        程序控制

 

        #!/bin/bash

        shebang

 

        ELF:

        #!/bin/bash

        程序=指令+数据

 

    bash的变量

        变量的类型:

            本地变量:只针对当前shell进程有效,对其子shell以及其他shell都无效;

            定义变量:[set]Var_Name="Value"

            引用变量:${Var_Name}

            撤销变量:unset Var_Name

            局部变量:仅对局部代码生效

            local Var_Name="vALUE"

        环境变量:对当shell进程及其子shell有效;

        exprot Var_Name="Value"

        Var_Name="Value"

        export Var_Name

        导出

        位置变量:

        $1,$2...$n

        ./learnbash.sh 2 8

        特殊变量:

        $0:脚本名称本身

        $?:上条命令的执行状态返回值0

        0:成功

        1-255:失效

        $$

        $!

        $#

        $*

 

posted @ 2016-10-28 09:30  郭延龙  阅读(158)  评论(0编辑  收藏  举报