补充:这里似乎不全面,我们似乎更倾向于这种分法,应该是用户自定义变量,通常我们使用小写字符表示,和环境变量,通常用全部大写字符表示,比如PATH,这是我们执行命令的搜索路径。LIBRARY_PATH链接库的路径。还有局部变量,也就是上面说的本地变量。只是在一定的区域范围内有效。
这样子的话,才好区分。
• shell变量。
• 环境变量。
• 变量替换。
• 导出变量。
• 特定变量。
• 向脚本传递信息。
• 在系统命令行下使用位置参数。
1、变量和变量的内容用"="来连接
2、等号两边不能直接解空格字符,如果接上了空格,这时候shell会把变量当作命令尝试执行,而找不到就会提示错误
3、变量名称只能是英文字符和数字和下划线,同时数字不能是开头字符。
4、若有空格字符,可以使用双引号或者单引号将内容结合起来。但是要注意,双引号内的变量可以保持变量的特性,单引号内的仅仅是一般字符。
5、必要时候以转义字符"\"将其他一些特殊字符变成一般符号。
6、export可以使一个变量编程环境变量
7、可以使用unset取消变量的定义
Va r i a b l e - n a m e = v a l u e 设置实际值到v a r i a b l e - n a m e
Va r i a b l e - n a m e + v a l u e 如果设置了v a r i a b l e - n a m e,则重设其值
Va r i a b l e - n a m e : ? v a l u e 如果未设置v a r i a b l e - n a m e,显示未定义用户错误信息
Va r i a b l e - n a m e ? v a l u e 如果未设置v a r i a b l e - n a m e,显示系统错误信息
Va r i a b l e - n a m e : = v a l u e 如果未设置v a r i a b l e - n a m e,设置其值
Va r i a b l e - n a m e : - v a l u e 同上,但是取值并不设置到v a r i a b l e - n a m e,可以被替换
what time do you wish start the payroll [03:00]:
process to start at 03:00 OK
Is it a monthly or weekly run [Weekly]:
Run type is Weekly
$ # 传递到脚本的参数个数
$ * 以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此选项参数可超过9个
$ $ 脚本运行的当前进程I D号
$ ! 后台运行的最后一个进程的进程I D号
$ @ 与$ #相同,但是使用时加引号,并在引号中返回每个参数
$ - 显示s h e l l使用的当前选项,与s e t命令功能相同
$ ? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |