Bash基础特性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bash基础特性相关的知识,希望对你有一定的参考价值。

bash特性及bash脚本编程初步

终端,附着在终端的接口程序:

    GUI:KDE,GNome,xfce

    CLI:/etc/shells

bash的特性:

    命令行展开:~,{}

    命令别名:alias,unalias

    命令历史:history

    文件名通配:glob

    快捷键:

    命令补全:

    路径补全:

    命令hash:

        缓存此前命令的查找结果:key-value

            key:搜索键

            value:值

[[email protected] ~]# hash
命中	命令
  16	/usr/bin/grep
   1	/usr/bin/tail
   6	/usr/sbin/useradd
[[email protected] ~]# hash -d grep
[[email protected] ~]# hash
命中	命令
   1	/usr/bin/tail
   6	/usr/sbin/useradd
[[email protected] ~]# hash -r
[[email protected] ~]# hash
hash: 哈希表为空

bash的特性:变量

    程序:指令+数据

        指令:由程序文件提供

        数据:IO设备、文件、管道、变量

    程序:算法+数据结构

    变量名+指向的内存空间

    变量赋值:name=value

    变量类型:存储格式、表示数据范围、参与的运算 

        编程语言:

                强类型变量

                弱类型变量:

                        bash把所有变量统统视作字符型

                        bash中的变量无需要事先声明,相当于把声明和赋值过程同时实现

                            声明:类型,变量名

                变量替换:把变量名出现的位置替换为其所指向的内存空间中的数据

                变量引用:${var_name},$var_name

                变量名:变量名只能包含数字、字母和下划线,而且不能以数字开头

                    变量名:见名知义,命名机制遵循某种法则,不能使用程序的保留字

                bash变量类型:

                    本地变量:作用域仅为当前shell进程;

                            变量赋值:name=value;

                            变量引用:${name},$name

                                双引号:变量名会替换为其值

                                单引号:变量名不会替换为其值 

                            查看变量:set

                            撤销变量:unset name(此处非变量引用)

                    环境变量:作用域为当前shell进程及其子进程

                        变量赋值:

                                1.export name=value

                                2.name=value,export name

                                3.declare -x name=value

                                4.name=value,declare -x name

                            变量引用:${name},$name

                            注意:bash内嵌了许多环境变量(变量名大写),用于定义bash的工作环境

                                PATH,HISTSIZE,HISTFILE,HISTFILESIZE,HISTCONTROL,SHELL,HOME,UID,PWD

                            查看环境变量:export,declare -x,printenv,env

                            撤销环境变量:unset name

                    局部变量:作用域仅为某代码片断(函数上下文)

                    位置参数变量:当执行脚本的shell进程传递的参数

                    特殊变量:shell内置的有特性功用的变量

                        如:$?(0:成功;1-255:失败)

                    只读变量:

                        1.readonly name

                        2.declare -r name

                        只读变量无法重新赋值,并且不支持撤销,存活时间为当前shell进程的生命周期,随shell进程终止而终止

以上是关于Bash基础特性的主要内容,如果未能解决你的问题,请参考以下文章

08-bash基础特性及基础命令

Bash基础特性

bash基础特性

bash的基础特性

bash 基础特性命令引用

bash的基础特性