缓冲区 溢出 :当能存时就存,否则就不存,避免溢出,
shell 弱类型编程语言:
强类型:变量使用前一定要声明,有可能要初始化。
弱类型:变量用时声明:甚至不区分类型,默认都为字符串。
变量赋值:VAR_NAME = VALUE
bash:变量类型
环境变量:
本地变量:(局部变量)
位置变量:
特殊变量:保存某些特殊数据的变量
NAME = jery
echo
NAME子bashecho
NAME
引用变量:
vaenameANIMAL=pigecho“therearesome
{ANIMAL}S”
本地变量:varname=value整个bash进程
局部变量
local VARNAME = VALUE 作用域为当前代码段:
环境变量:当前环境进程及其子进程
export varname=value
脚本执行时:会启动一个子shell进程
命令行启动的脚本会继承当前shell环境变量:
系统自动执行的脚本(非命令行启动)就需要自我定义需要各环境变量
特殊变量:
echo $?
程序执行,可能有两类返回值:
程序执行结果:
程序状态返回代码(0-255)
0:正确执行
1-255:错误执行,1,2,127系统预留:输入重定向:
>
>
2>
2>>
&>
/dev/null:设备,软件设备,bit bucket,数据黑洞
id xiaoxiaoben&> /dev/null
echo $?
状态返回
撤销变量:
unset + 变量名称
查看当前变量:set
查看当前shell中的环境变量:
printenv
env
export
变量不进行算数运算,(默认全是字符串)
脚本:
shebang:魔数
#!/bin/bash
#开头为注释行。
命令的堆砌.按照实际需要,结合流程控制机制实现的源程序
linux内核只能执行ELF格式文件。
chmod:+x
执行:当命令提示符没有路径时默认在path下去找,没有路径时则不能开始运行