bash脚本编程之――变量、变量类型
shell编程: 编译器,解释器 编程语言:机器语言、汇编语言、高级语言 静态语言:变异型语言 强类型(变量) 事先转换成可以执行格式 c、c++、JAVA、c# 动态语言:解释型语言,(on the fly) 弱类型 边解释边执行 php、SHELL、Python、Perl 面向过程:shell、c 面向对象:JAVA、Python、Perl、c++ 变量:内存空间,命名 内存:编址的存储单元 变量类型:事先确定数据的存储格式和长度 字符型 数值型 整型 浮点型 整型,8bit:保存256 0-255 溢出 逻辑:1+1>2 逻辑运算:与、或、非、异或 1:真 0:假 与: 1&0=0 0&1=0 0&0=0 1&1=1 非: !真=假 !假=真 shell:弱类型编程语言 强:变量在使用前,必须事先声明,甚至还需要初始化 弱:变量用时声明,甚至不区分类型 bash变量类型:环境变量 本地变量(局部变量) 位置变量 特殊变量 本地变量: VARNAME=VALUE 作用域为整个 bash进程: 引用变量:${变量名},括号有的时候可以省略 [root@localhost ~]# name=jack [root@localhost ~]# echo $name jack [root@localhost ~]# animal=dog [root@localhost ~]# echo "there are some ${animal}s" there are some dogs 局部变量: local VARNAME=VALUE:作用域为当前代码段: 环境变量: 作用域为当前shell进程及其子进程。 expore VANAME=VALUE "导出" 位置变量: $1,$2,...... 特殊变量: $?:上一个命令执行状态返回值; 程序执行。肯能有了两类返回值; 1.程序执行结果 2.程序状态返回代码(0-255) 0:正确执行 1-255:错误执行 , 1,2 ,127 系统预留 输出重定向: > :覆盖重定向 >>:追加重定向 2>:错误重定向 2>>错误追加重定向 &>同时重定向 撤销变量: unset vaname 查看当前shell中变量; set 查看当前shell中的环境变量: princev env export 脚本:命令的堆砌,按实际需要,结合命令流程机制实现的源程序 shebang:魔数 #!/bin/bash #:而後的#都是注?行 给 脚本在执行时会启动一个子shell环境变量; /dev/null:软件设备,bit bucket,数据黑洞 脚本在执行时会启动一个子shell进程; 命令行中启动的脚本会继承当前shell环境变量; 系统自动执行的脚本(非命令行启动)就需要自我定义需要各环境变量 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- jenkins – Docker:无法找到root用户:passwd文件中没有
- vim编辑器详解
- 在AngularJS应用程序初始化之前,javascript – $http请求?
- angular – 在rxjs中执行高级http请求
- shell 脚本kill oracle 数据库指定用户
- twitter-bootstrap – twitter bootstrap模态不是真正的模态
- 《数据结构》学习-- Hash(1) --Hash简介
- AngularJs 监听单选按钮,禁止级联的下拉框编辑
- angular cli排除`ng test –code-coverage`的文件/目录
- attributes – 在AngularDart中包含mustache指令时,NgAttr值