马哥学习笔记――shell变量类型
2015-04-17 15:33
323 查看
shell变量基础
shell
变量是一种很“弱”的变量,默认情况下,一个变量保存一个串,shell不关心这个串是什么含义。所以若要进行数学运算,必须使用一些命令例如let、
declare、expr、双括号等。shell变量可分为两类:局部变量和环境变量。局部变量只在创建它们的shell中可用。而环境变量则可以在创建
它们的shell及其派生出来的任意子进程中使用。有些变量是用户创建的,其他的则是专用shell变量。变量名必须以字母或下划线字符开头。其余的字符
可以是字母、数字(0~9)或下划线字符。任何其他的字符都标志着变量名的终止。名字是大小写敏感的。给变量赋值时,等号周围不能有任何空白符。为了给变
量赋空值,可以在等号后跟一个换行符。用set命令可以查看所有的变量,unset
var命令可以清除变量var,var相当于没有定义过。readonly
var可以把var变为只读变量,定义之后不能对var进行任何更改。对shell变量的引用方式很多,用这些方式可以方便的获取shell变量的值,变
量值的长度,变量的一个字串,变量被部分替换后的值等等。
本地变量:作用域为整个bash进程
set VARNAME=VALUE
局部变量:作用域为当前代码段
local VARNAME=VALUE
环境变量:作用域为当前shell进程及其子进程;
export VARNAME=VALUE
VARNAME=VALUE
export VARNAME
位置变量:
$1, $2, ...
特殊变量:
$0:当前脚本的文件名
$num:num为从1开始的数字,$1是第一个参数,$2是第二个参数,${10}是第十个参数
$#:传入脚本的参数的个数
$*:所有的位置参数(作为单个字符串)
$@:所有的位置参数(每个都作为独立的字符串)。
$?:当前shell进程中,上一个命令的返回值,如果上一个命令成功执行则$?的值为0,否则为其他非零值,常用做if语句条件
$$:当前shell进程的pid
$!:后台运行的最后一个进程的pid
$-:显示shell使用的当前选项
$_:之前命令的最后一个参数
shell
变量是一种很“弱”的变量,默认情况下,一个变量保存一个串,shell不关心这个串是什么含义。所以若要进行数学运算,必须使用一些命令例如let、
declare、expr、双括号等。shell变量可分为两类:局部变量和环境变量。局部变量只在创建它们的shell中可用。而环境变量则可以在创建
它们的shell及其派生出来的任意子进程中使用。有些变量是用户创建的,其他的则是专用shell变量。变量名必须以字母或下划线字符开头。其余的字符
可以是字母、数字(0~9)或下划线字符。任何其他的字符都标志着变量名的终止。名字是大小写敏感的。给变量赋值时,等号周围不能有任何空白符。为了给变
量赋空值,可以在等号后跟一个换行符。用set命令可以查看所有的变量,unset
var命令可以清除变量var,var相当于没有定义过。readonly
var可以把var变为只读变量,定义之后不能对var进行任何更改。对shell变量的引用方式很多,用这些方式可以方便的获取shell变量的值,变
量值的长度,变量的一个字串,变量被部分替换后的值等等。
本地变量:作用域为整个bash进程
set VARNAME=VALUE
局部变量:作用域为当前代码段
local VARNAME=VALUE
环境变量:作用域为当前shell进程及其子进程;
export VARNAME=VALUE
VARNAME=VALUE
export VARNAME
位置变量:
$1, $2, ...
特殊变量:
$0:当前脚本的文件名
$num:num为从1开始的数字,$1是第一个参数,$2是第二个参数,${10}是第十个参数
$#:传入脚本的参数的个数
$*:所有的位置参数(作为单个字符串)
$@:所有的位置参数(每个都作为独立的字符串)。
$?:当前shell进程中,上一个命令的返回值,如果上一个命令成功执行则$?的值为0,否则为其他非零值,常用做if语句条件
$$:当前shell进程的pid
$!:后台运行的最后一个进程的pid
$-:显示shell使用的当前选项
$_:之前命令的最后一个参数
相关文章推荐
- 小白的廖雪峰JS教程学习笔记要点---数据类型和变量
- c++Primer学习笔记之五:变量和基本类型_1
- Python学习笔记-变量和数据类型
- C++ Primer学习笔记2-变量与基本类型
- Shell 学习笔记之变量
- c++学习笔记之变量和基本类型(1)
- Python学习笔记(一)—变量与数据类型
- Python学习笔记一 基本语法、变量类型、时间处理
- Linux-shell学习笔记--环境变量
- Python学习笔记(二)变量类型
- 学习笔记:Python基础 —— 数据类型和变量
- Shell脚本学习笔记(二)--变量
- Python学习笔记1——数据类型和变量
- python学习笔记-2.python变量和数据类型
- Go学习笔记-[类型-变量]
- shell的学习笔记——变量的设置规则
- Linux学习笔记 -- Shell 变量
- C\C++ 程序员从零开始学习Android - 个人学习笔记(四) - java基础 - 数据类型、变量、字符串、数组
- Java学习笔记三:Java的变量、常量、变量的类型及使用规则
- JavaScript学习笔记一:数据类型和变量