shell系统给定变量大全——及使用方法

简介: shell系统给定变量大全——及使用方法

注:以下内容应用与【*.sh】文件

系统给定的变量

在Shell编程中,系统给定的变量(也称为预定义变量)是由系统预设的,用于提供有关脚本运行的环境和状态的信息。这些变量通常不需要用户定义或修改,可以直接在脚本中使用。

变量名 作用
$0  当前脚本的名字
$n 传递给脚本或者函数的参数,n表示第几个参数
$# 传递给脚本或函数的参数个数
$* 传递给脚本或函数的所有参数
$@ 传递给脚本或者函数的所有参数
$$ 当前shell脚本进程的PID
$? 函数返回值,或者上个命令的退出状态
$BASH BASH的二进制文件问的路径
$BASH_ENV BASH的启动文件
$BASH_VERSINFO[n] BASH版本信息,有六个元素
$BASH_VERSION BASH版本号
$EDITOR 脚本所调用的默认编辑器
$EUID 当前有效的用户ID
$FUNCNAME 当前函数名
$GROUPS 当前用户所属组
$HOME 当前用户家目录
$HOSTTYPE 主机类型
$LINENO 当前行号
$OSTYPE 操作系统类型
$PATH PATH路径
$PPID 当前shell进程的父进程ID
$PWD 当前工作目录
$SECONDS 当前脚本运行秒数
$TMOUT 不为0时,超过指定的秒将退出shell
$UID 当前用户ID

使用方法:

编辑脚本文件。

vi test.sh

测试内容:

echo "文件名:$0"
echo "第一个参数:$1"
echo "第三个参数:$3"
echo "共计传递了:$#个参数"
echo "传递的所有参数:$*"
echo "传递给函数的参数:$@"
echo "当前脚本的进程ID:$$"
echo "二进制文件路径:$BASH"
echo "BASH的启动文件:$BASH_ENV"
echo "BASH的版本号6个元素:$BASH_VERSINFO"
echo "BASH的版本号:$BASH_VERSION"
echo "脚本使用的默认编辑器:$EDITOR"
echo "当前的用户ID(有效):$EUID"
echo "当前的用户ID:$UID"
echo "用户HOME目录:$HOME"
echo "主机类型:$HOSTTYPE"
echo "操作系统类型:$OSTYPE"
echo "PATH路径:$PATH"
echo "当前工作目录:$PWD"
echo "当前脚本运行秒数:$SECONDS"

测试结果:

这里注意以下BASH的版本号6个元素,显示的是5,是0,1,2,3,4,5共计六个元素。

很多的时候我们需要进行一定的系统判断以及权限判断,故而需要这些默认的内容,用起来还是很方便的。

相关文章
|
Shell Python
python 和shell 变量互相传递
python 和shell 变量互相传递
278 0
|
7月前
|
存储 Shell Linux
八、Linux Shell 脚本:变量与字符串
Shell脚本里的变量就像一个个贴着标签的“箱子”。装东西(赋值)时,=两边千万不能有空格。用单引号''装进去的东西会原封不动,用双引号""则会让里面的$变量先“变身”再装箱。默认箱子只能在当前“房间”(Shell进程)用,想让隔壁房间(子进程)也能看到,就得给箱子盖个export的“出口”戳。此外,Shell还自带了$?(上条命令的成绩单)和$1(别人递进来的第一个包裹)等许多特殊箱子,非常有用。
674 2
|
监控 网络协议 Shell
ip和ip网段攻击拦截系统-绿叶结界防火墙系统shell脚本
这是一个名为“小绿叶技术博客扫段攻击拦截系统”的Bash脚本,用于监控和拦截TCP攻击。通过抓取网络数据包监控可疑IP,并利用iptables和firewalld防火墙规则对这些IP进行拦截。同时,该系统能够查询数据库中的白名单,确保合法IP不受影响。此外,它还具备日志记录功能,以便于后续分析和审计。
340 6
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
存储 Java Shell
Shell 变量
10月更文挑战第2天
227 1
shell脚本变量 $name ${name}啥区别
shell脚本变量 $name ${name}啥区别
|
Java Shell Linux
Shell 变量设置
Shell设置变量
260 5
|
分布式计算 大数据 Shell
MaxCompute产品使用合集之odps shell如何将ech变量的结果集合写入文件,并且指定服务器的位置
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
273 10
|
Shell
[shell]在curl测试的data参数中引用变量
[shell]在curl测试的data参数中引用变量
810 1
|
Shell Linux Perl
Linux|如何允许 awk 使用 Shell 变量
Linux|如何允许 awk 使用 Shell 变量