linux变量及shell基础知识

linux变量及shell基础知识
命令扩展~表示用户家目录 {}命令行路径扩展 ``反引号相当于$() 可以在其中添加命令eg:mkdir {a,b}_{c,d} 相当于创建目录a_c,a_d,b_c,b_d四个目录 echo “It is $(date ‘+%T’)”输出结果为 It is 03:12:13

在shell编程中变量有以下特点:
1.        不区分变量类型
2.        变量不需要提前声明,直接使用(不过建议声明一下)
变量命名特点:
1.        以字母或”_”开头
2.        最好不要有特殊字符
3.        建议以大写字母为变量名
变量的类别:
1.        本地变量
2.        环境变量
3.        特殊变量(bash内置变量)
4.        位置变量
本地变量的声明:set VARNAME=value  取消 unset VARNAME.赋值和撤销变量前不需要加$,但在引用时输出时必须加$   eg: echo $VARNAME。本地变量只对当前shell起作用。
       环境变量只对当前shell和其子shell起作用。将本地变量改为环境变量方法是:     export VARNAME    取消办法unset VARNAME

       用export和printenv显示预定义的环境变量,常见的系统变量有PATH(二进制文件位置)、HISTSIZE(history的大小)、HISTFILE(存储history的文件)、USER、HOME、PWD等。
       可用which command查看文件的路径 hash查看执行过的命令(必须是外部命令)和位置其结果中hit表示使用的次数。关于PS1的用法可以使用man bash查看。
       为命令取别名使用alias  eg:ls=’ls –l’

 

shell编程基础知识
      

       编程的语言可分为编译型语言和脚本语言。编译型语言经过一次编译,执行过程为:源代码à编译à链接à运行。其特点为:执行效率高,但维护成本高。c 、c++、java、c#都属于编译型语言。脚本语言是一种动态语言,执行方法为解释执行。比较容易修改。shell、perl、php、asp都属于脚本语言。
       shell脚本必须以#!<shell脚本路径>开头,其他以#开头的都为注释。执行脚本的办法为  ./脚本名称   用bash –n test.sh来测试脚本。
       环境变量的配置文件可分为全局配置文件、个人配置文件,其结果为两文件之和,如有冲突则以个人为主。
              全局配置文件有 /etc/profile         /etc/profile.d/*            /etc/bashrc

              个人配置文件有       ~/.bashrc              ~/.bash_profile    ~/.bash_logout

                     其中profile类文件:设定环境变量,执行一些命令
                            bashrc类文件:设定本地变量,定义命令别名
       系统中的shell可分为登录shell和非登录shell。启动登录shell是读取配置文件的顺序为:/etc/profileà(/etc/profile.d/*)à~/bash_profileà~/.bashrcà/etc/bashrc。而启动非登录shell读取的顺序为       ~/.bashrcà/etc/bashrcà/etc/profile.d/* 。当我们修改过配置文件后可用source FILE或 . FILE重新读取配置文件。eg: 1  alias 存在于bashrc中  2 增加PATH的内容 export PATH=$PATH:/uer/local/program/bin 意为增加PATH的路径/usr/local/program/bin       切记声明称环境变量时必须用export来声明一下

 

你可能感兴趣的:(linux,职场,环境变量,基础知识,休闲)