shell编程 3 变量

用户自定义变量:

一,规则
1,变量不能以数字开头,比如2age 这不是合法的变量, 变量的默认类型都是字符串。
2,变量用=连接值,=之间不能有空格
3,如果变量值包含空格,需要用''或者“”将值括起来
4,环境变量名建议大写
5,如果将命令的结果作为变量值赋予变量,则需要使用反引号`或者$()包含命令
5,自定义变量只在当前的shell中生效

二,变量查看与删除
    set  查看系统中所有的变量
    unset 删除系统中某个变量


---------------------------------------------------------------------------------


环境变量
一,规则
   1,环境变量不仅在当前的shell中生效,而且这个shell下面的子shell也生效,如果把环境变量写入配置文件,那么这个环境变量在所有的shell中生效
   2,声明环境变量:export bianliang=12;

二,相关命令
pstree命令     查看进程树
env            查看环境变量

三,PATH变量  
   1,系统查找命令的路径,中间以:冒号来分割
   2,不建议将自己写的脚本放在PATH的路径当中,避免混乱


----------------------------------------------------------------------------------


位置参数变量:目的是将命令行中输入的参数传递到shell脚本当中
一,规则
   1,$0代表命令本身,$1-$9代表命令中传递的第一个到第九个参数,如果参数大于9个,则需要用大括号括起来,如:${10}
   $* 代表命令中所有的参数,并当做一个整体看待  在循环当中之后循环1次
   $@ 代表命令中所有的参数,把每个参数区分对待  在循环当中有几个参数就会循环几次
   $# 代表命令中所有的参数的个数


----------------------------------------------------------------------------------
linux把进程放置在后台需要引用 &符号, 比如 ls -rlt &
预定义变量
一,规则
   1, $?  代表上条命令的返回结果传递给$? ,如果命令不存在返回127,执行失败是非0的数字,执行正确是返回0
   2, $$  当前进程的PID号
   3, $!  后台运行的最后一个进程的PID号

二,接收键盘输入
   read 选项 变量名
   read -t 30 -p "请输入姓名:"  name              等待用户30秒输入name
   read -s    -p "请输入年龄:" age                隐藏用户输入的age
   read -n  1  -t 30  -p "请输入性别:" sex        等待30秒等待用户只能输入1个字符代表sex


  

猜你喜欢

转载自jianhao-wang.iteye.com/blog/2241507