linux中特殊变量,linux-shell-特殊变量

本文介绍了如何在Linux shell中查看和操作环境变量,如$PATH、$n、$0等,并详细讲解了参数传递的几种方式,如$1、$*、$@等。此外,还展示了如何使用let和expr运算符进行简单的数学计算和脚本执行状态检查。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境变量

使用env命令可以查看到当前工作环境下的环境变量

[root@VM_158_86_centos vbird]# env

XDG_SESSION_ID=665714

HOSTNAME=VM_158_86_centos

NVM_CD_FLAGS=

TERM=xterm-256color

SHELL=/bin/bash

HISTSIZE=3000

SSH_TTY=/dev/pts/0

NVM_DIR=/root/.nvm

USER=root

环境变量$PATH

[root@VM_158_86_centos vbird]# echo $PATH

/root/.nvm/versions/node/v10.7.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

位置变量

$n 传递给脚本或函数的参数。n是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。

预定义变量

$0 当前脚本的文件名

$# 传递给脚本或函数的参数个数。

$* 传递给脚本或函数的所有参数。

$@ 传递给脚本或函数的所有参数。可以当作数组用 被双引号(" ")包含时,与 $* 稍有不同

$? 上个命令的退出状态,或函数的返回值。

$$ 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID。

exec:

#!/bin/bash

#expr表示后面的表达式为一个数学运算

#Let expressions 执行一个或多个表达式。表达式中的变量前不必有$.如果表达式中包含>了空格或其他特殊字符,则必须引起来。

let sum=$1+$2

#运算符+号前后必须加空格

sum_expr=`expr $1 + $2`

echo $sum

echo $sum_expr

echo "fileName:$0"

echo "this Shell PID:$$"

echo "first parameters:$1"

echo "second parameters:$2"

echo "all parameters:$*"

echo "all parameters array:$@"

echo "parameters numbers:$#"

echo "the previous command exec status:$?"

result:

[root@VM_158_86_centos vbird]# sh special_var.sh 1 2

3

3

fileName:special_var.sh

this Shell PID:4057

first parameters:1

second parameters:2

all parameters:1 2

all parameters array:1 2

parameters numbers:2

the previous command exec result:0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值