首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Shell内部变量

Shell内部变量

原创
作者头像
入门笔记
修改于 2020-12-30 15:46:15
修改于 2020-12-30 15:46:15
1.1K0
举报
文章被收录于专栏:入门小站入门小站

Shell内部变量是Linux提供的一种特殊类型的变量,这种变量在程序中做出判断,在shell程序内这些变量的值是不能被改变的。

变量

解释

$0

脚本自身名字

$#

位置参数总数

$?

上一条是否执行成功0为成功,非0不成功

$!

上一条后台运行进程的PID

$$

当前进程PID

$*

所有位置的参数看成一个字符串

$@

每个位置参数被看成单独的字符串

$1~$n

位置参数:$1是第1参数、$2是第2参数

案例:

代码语言:txt
复制
> vim sh1.sh

#!/bin/bash
  
echo "位置参数总数:$#"
echo "所有的参数:$*"
echo "所有的参数:$@"
echo "第一个位置参数:$1"
echo "第二个位置参数:$2"
shift
echo "第三个位置参数:$3"
echo "上一步执行是否成功:$?"
echo "上一条后台运行进程的PID:$!"

执行:

代码语言:txt
复制
> bash sh1.sh aa bb cc

位置参数总数:3
所有的参数:aa bb cc
所有的参数:aa bb cc
第一个位置参数:aa
第二个位置参数:bb
第三个位置参数:
上一步执行是否成功:0
上一条后台运行进程的PID:

注意第三个位置参数没有输出,原因是每执行一次 shift 命令,位置变量个数就会减一,而变量值则提前一位。shift n,可设置向前移动 n 位。

wx.jpg
wx.jpg

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档