shell 中内部变量和环境变量

内部变量主要是为shell编程提供支持

#  $#命令行参数或位置参数的数量

?  $?最近执行的一次命令或脚本的出口状态

$  $$shell脚本的进程ID

!  $!最近运行后台进程的PID

*  $@ 与 $*的区别

@  $@ 与 $*的区别

OLDPWD   用cd到所建目录之前的路径,路径必须是发生过改变才有值

OPTARG     getopts 命令已经处理的前一个选项参数

OPTIND       getopts 命令已经处理的前一个选项参数的索引

PPID             当前进程的父进程的PID

PWD             当前目录

RANDOM     会产生一个介于0~32767的随机整数

REPLY           read命令读入,但是后面不指定参数名时,读入的东西会被赋予变量REPLY

SECONDS    脚本已经运行的时间(秒数)



SHELL 环境变量

COLUMNS    终端窗口的列宽

LINES             终端窗口的行宽

EDITOR          确定命令编辑使用的编辑程序,通常为vim/emacs

FCEDIT           设定fc内置命令使用的编辑器

IFS                    字段分割符(默认为空格,制表符和换行符),决定了shell在解析命令行或字符串时怎样确定字段边界

INPUTRC        设定readline启动文字的名字,默认值 为~/.inputrc


HISTFILE         指定命令历史文件,默认~/.bash_history

HISTFILESIZE 历史文件保存的最大命令记录数量,默认500

HISTSIZE          历史缓冲区保存的最大命令记录 数量,默认500


LANG                     语言环境

LC_ALL                 用于统一LC_*系列变量的值

LC_CTYPE           确定如何处理语言环境的字符集,包括字符的分类,字符大小写转换,及其他字符属性

LC_MESSAGES   采用何种语言输出系统提示信息

LC_NUMBERIC    本地化千分数值的显示形式


MAIL                        定义邮箱的路径文件名

MIALCHECK          检测邮件频率,默认60s,若为0,表示不检查

MAILPATH               定义系统是否有新邮件到来的文件名


PATH                        命令检索路径及顺序,目录之间加冒号分割符,PATH环境变量由/etc/profile及$HOME/.profile 等初始化。为了安全期间它从不包含当前目录。


PS1                          第一级Shell命令提示符,或称主提示符。默认'[\u@\h\W]\$ '  具体参数见linux中PS1的设置

PS2                          第二级shell命令提示符,默认值为">",提示用户继续输入不完整的命令

PS3                          第三级命令提示符,默认值"#?",用于设置select循环控制结构使用的菜单选择提示符

PS4                          第四级命令提示符,默认值为"+",用于shell脚本的调试。

你可能感兴趣的:(编程,shell,脚本)