shell编程变量及变量类型
编程语言:包括机器语言、汇编语言、{高级语言[静态语言(编译型语言,一般为强类型变量,需要发布为可执行程序,C、C++、Java,C#)和动态语言(解释型语言,一般为弱类型语言,不需要发布为可执行程序,是一边执行一边解释,Asp,asp.net,php,shell,python、perl)]}
面向对象:解决对象之间的动作,主要适合开发大型程序java,python,c++,perl
面向过程:主要解决过程,主要适合开发小型程序shell,c
变量:是内存空间,是命名的内存空间,存储数据的存储格式和长度、计算机的最小存储单位为字节
内存:是编址的存储空间
进程:程序运行后叫进程
逻辑运算:与、或、非、异或(短路逻辑运算)
真 & 假 = 假
假 & 真 = 假
假 & 假 = 假
真 & 真 = 真
与运算时只有两者为真是为真,否则为假 ,相当于串联电路,只要有一个为假,结果一定为假
真 | 假 = 真
假 | 真 = 真
假 | 假 = 假
真 | 真 = 真
或运算时只要有一者为真则为真,相当于并联电路,只要有一个为真,则结果一定为真
!真=假
!假=真
非为单目运算,即取反运算,相当于电磁感应
异或运算操作数相同则为假,否则为我真
编译型语言没有额外的处理逻辑所以是强类型的,脚本型语言可以有解释器控制,可以是弱类型
强类型编程语言:变量在使用前必须事先声明,甚至还需要初始化,没有初始化的变量保存的是随机数
弱类型编程语言:变量是在用时声明,甚至不区分类型,隐式转换,显式转换
变量赋值:变量=值
bash变量类型
环境变量,export 变量=值,作用域为当前shell及其子进程
本地变量,变量=值,变量一定是进程的变量,作用域为整个bash进程
(局部变量),local 变量=值,作用域为当前代码段
位置变量,如后向引用 引用$1,$2...
特殊变量,bash内置的,又称系统变量,保存某些特殊数据的,如$?(保存上一命令执行状态返回值)
引用变量:${varname},有时{}号可以省略
脚本在执行时,会启动一个子shell进程
命令行中启动的脚本会继承当前shell环境变量
系统自动执行的脚本(不含命令行)需要自我定义所需的环境变量
程序执行后,一般有两种返回值:
1、执行结果返回值
2、执行状态返回值
输出重定向
>:覆盖重定向
>>:追加重定向
2>:错误重定向
2>>错误追加重定向
&>:同时(正确、错误)重定向
/dev/null,软件模拟设备
/dev/zero
撤消变量:unset 变量名
查看当前shell中的变量:使用set,包括环境变量和本地变量,
查看当前shell的环境变量:使用printenv,env或export
弱类型的变量类型默认为字符型
GB-2312
本文出自 “无知有知” 博客,请务必保留此出处http://yujiqing.blog.51cto.com/1475974/1614930
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。