shell基础编程
1.变量
1.局部变量,每个shell都有自己的变量空间,局部变量的作用域被限定在他们的shell中,可以使用local命令来“显示”的声明局部变量
2.环境变量成为“全局变量”,子shell会继承父shell的环境变量
#!/bin/sh
VAR_02=100
function fun(){
VAR_02=200
}
echo "Before function VAR_02:$VAR_02"
fun
echo "after function VAR_02:$VAR_02"
-----------------------------------
output:
Before function VAR_02:100
after function VAR_02:200
-----------------------------------
#include<stdio.h>
int VAR_02=100;
void fun(void){
int VAR_02 = 200;
}
int main(){
printf("Before: %d\n",VAR_02);
fun();
printf("After: %d\n",VAR_02);
}
---------------------------------
output:
Before: 100
After: 100
解释:在shell中以shell的进程ID作为一个命名空间,所以即使在函数中声明变量也会在全