BASH内置变量
BASH内置变量
().BASH
作用:bash的完整路径.默认为/bin/bash
().BASH_ENV
作用:仅在非交互模式中适用.在执行shell脚本时,会先检查该变量是否指定了启动
脚本,若指定则先执行它指定的启动脚本.
().BASH_VERSION
作用:bash的版本号 实例:echo $BASH_VERSION
().CDPATH
作用:cd的搜索路径,多个路径用':'隔开
实例: CDPATH="/tmp/A/B:/var/log"
(假设当前目录为/home/example)
mkdir -p /tmp/A/B/C
cd C #默认cd会先在当前目录中查找是否存在C目录,若不存在则会在CDPATH变量指定的路径中查找,会进入/tmp/A/B/C
().EUID
作用:有效的使用者的UID.
().FUNCNAME
作用:在函数执行期间,该变量的值为函数名
实例:
hello()
{
echo "这个函数名为$FUNCNAME"
}
hello #结果显示为"这个函数名为hello"
().HISTFILE
作用:指定历史脚本文件的路径,通常为~/.bash_history
().HISTFILESIZE
作用:设定历史文件的存储的最大指令数
().HISTIGNORE
作用:指定不存入历史脚本文件的指令序列,多个指令用':'隔开
实例: HISTIGNORE=ls:ps:cd:t*:\&
说明:上面指定不存储到历史脚本中的指令有ls,ps,cd,和以t开头的指令,以及后台指令(\&)
().HOME
作用:设置用户的主目录,用以替换为~的值
().HOSTNAME 作用:设置主机名
().HOSTTYPE
作用:设置主机的类型
().IFS
作用:定义字段分隔符,默认为:空白符(空格,tab,换行)
实例:
MY="1:2:3:4:5"
IFS=:
for i in $MY;do
echo $i
done
结果: ().INPUTRC 作用:设定命令行函数或库readline的启动配置文件,可覆盖~/.inputrc的设定
().LANG
作用:设置当前语系的名称
().LC_ALL
作用:设置当前的locale,可覆盖LANG和LC_*的设置
().LC_CTYPE
作用:设置locale的字符分类
().MACHTYPE 作用:描述主机形态的GNU格式: CPU-公司-系统
实例: echo $MACHTYPE #i686-pc-linux-gnu
().OLDPATH
作用:前一个工作目录
实例:cd - 等价 cd $OLDPATH
().PATH
作用:设置外部命令的搜索路径,多个以':'隔开
().PPID 作用:父进程的PID
().PS1(这个是数字1)
作用:设置主提示符号,默认为\s-\v\$
().PS2
作用:设置次提示符号,默认为 >
().PS3
作用:设置select的提示符,默认为 #?
().PWD
作用:当前的工作目录
实例: echo $PWD 等价 pwd
().SECONDS
作用:显示当前shell的启动的时间(单位:s)
实例:echo $SECONDS
().SHELL
作用:当前使用的shell名,默认为/bin/bash
().TMOUT
作用:若该变量的值大于0的话,则bash会在等待TMOUT秒后还没有任何操作就会自动结束当前的bash shell.
实例: echo 'TMOUT=600'>>/etc/profile #在10min内没有任何操作的话则自动注销当前系统
().UID
作用:用户ID号
().$,$,...,$N
作用:位置参数,当超过9时用${N}来表示。
().$$
作用:当前的进程号
实例:echo $$
().$?
作用:上一个命令的退出状态
实例:echo $?
说明:一般使用这个变量来判断上一个命令是否正确执行,一般来说当该值为0时表示上一个命令正确执行,否则没有正确执行
().$#
作用:位置参数的个数
().$!
作用:上一个后台执行程序的进程ID号。
实例: top & #假设他的PID为2112
echo $! #结果为2112
作者“huangyandong”
BASH内置变量的更多相关文章
- 常见 Bash 内置变量介绍
目录 $0$1, $2 等等$#$* 与 "$*"$@ 与 "$@"$!$_$$$PPID$?$BASH$BASH_VERSION$EUID 与 $UID$GR ...
- shell 脚本中常用的内置变量
在 Bash 解释器中,内置了许多变量,这些变量的功能是解释器自带的,我们在编写shell脚本时如果能灵活的使用它们,对脚本的编写效率以及差错大有帮助, 下面一一介绍这些变量 $FUNCNAME.$L ...
- awk(流程控制、内置变量、内置函数、数组)
摘自:http://bbs.51cto.com/thread-883948-1-1.html awk(流程控制.内置变量.内置函数.数组) ... 参考其他的资料,给大家看看.一.awk流程控制语句 ...
- awk内置变量 awk有许多内置变量用来设置环境信息,这些变量可以被改变,下面给出了最常用的一些变量。
ARGC 命令行参数个数 ARGV 命令行参数排列 ENVIRON 支持队列中系统环境变量的使用 FILENAME awk浏览的文件名 FNR 浏览文件的记录数 FS 设置输入域分隔符,等价于命令行 ...
- 【转】awk内置变量
awk是个优秀文本处理工具,可以说是一门程序设计语言.下面是awk内置变量. 一.内置变量表 属性 说明 $0 当前记录(作为单个变量) $1~$n 当前记录的第n个字段,字段间由FS分隔 FS 输入 ...
- Linux基础教程 linux awk内置变量使用介绍
awk是个优秀文本处理工具,可以说是一门程序设计语言.下面是兄弟连Linux培训 给大家介绍的awk内置变量. 一.内置变量表 属性 说明 $0 当前记录(作为单个变量) $1~$n 当前记录的第n个 ...
- awk 内置变量
awk 内置变量 FS 设置输入域分隔符,等价于命令行 -F选项 OFS 输出域分隔符 NF 浏览记录的域的个数NR 已读的记录数RS 控制记录分隔符 ORS 输出记录分隔符 substr 截取指定的 ...
- 『忘了再学』Shell基础 — 29、AWK内置变量
目录 1.AWK内置变量 2.练习说明 (1)$n变量练习 (2)FS变量练习 (3)NF变量和NR变量练习 3.总结: 1.AWK内置变量 AWK内置变量如下表: awk内置变量 作用 $0 代表目 ...
- Maven系列三Maven内置变量
Maven内置变量说明: ${basedir} 项目根目录(即pom.xml文件所在目录) ${project.build.directory} 构建目录,缺省为target目录 ${project. ...
随机推荐
- C语言可变参数在宏定义中的应用
在C语言的标准库中,printf.scanf.sscanf.sprintf.sscanf这些标准库的输入输出函数,参数都是可变的.在调试程序时,我们可能希望定义一个参数可变的输出函数来记录日志,那么用 ...
- 关于ADMM的研究(一)
关于ADMM的研究(一) 最近在研究正则化框架如何应用在大数据平台上.找到了<Distributed Optimization and Statistical Learning via the ...
- 最简单的CRC32源码---逐BIT法
CRC其实也就那么回事,却在网上被传得神乎其神.单纯从使用角度来说,只需要搞明白模二除法,再理解一些偷懒优化的技巧,就能写出自己的CRC校验程序. 下面的代码完全是模拟手算过程的,效率是最低的,发出来 ...
- 【HDOJ】1983 Kaitou Kid - The Phantom Thief (2)
不仅仅是DFS,还需要考虑可以走到终点.同时,需要进行预处理.至多封闭点数为起点和终点的非墙壁点的最小值. #include <iostream> #include <cstdio& ...
- JAVA 数组常用技巧
1. 在Java中输出一个数组(Print an array in Java) int[] intArray = { 1, 2, 3, 4, 5 }; String intArrayString = ...
- SharePoint 2010中使用Visual Studio 2010进行方便快速的Web Part开发
转:http://www.cnblogs.com/fatwhale/archive/2010/02/24/1672633.html 在Visual Studio 2010中, 已经集成了用于Shar ...
- [PeterDLax著泛函分析习题参考解答]第2章 线性映射
1. 验证两个线性映射的复合仍是线性映射而且满足分配律: $$\bex {\bf M}({\bf N}+{\bf K})={\bf M}{\bf N}+{\bf M}{\bf K},\quad ({\ ...
- HDU-2527 Safe Or Unsafe
http://acm.hdu.edu.cn/showproblem.php?pid=2527 建哈夫曼树,哈夫曼编码,求wpl值. Safe Or Unsafe Time Limit: 2000/10 ...
- SLua 中继承 C# 类接口 Slua.Class 的一个 Bug。
由于目前要把大量的代码移植到 lua 中(真是够虐心的),面向对象肯定少不了,项目的代码都是这么设计的,于是就测试 Slua.Class 接口来扩展 C# 的类,发现有点问题,给作者提交了一个 Iss ...
- slua 中使用 lua5.3
因为我们服务器极有可能要迁移到 skynet 上,它基于 lua5.3,而服务器和客户端会公用很多lua代码,所以在考虑在客户端 slua 中使用 lua5.3. 经过编译后,发现 slua 对 lu ...