专业编程基础技术教程

网站首页 > 基础教程 正文

有点意思的Shell特殊变量(shell 特殊变量)

ccvgpt 2025-03-26 10:11:32 基础教程 17 ℃

学Linux应该绕不过Shell脚本,Shell脚本说难也难,说容易也容易;

如果你只想写一个能运行的Shell脚本,那就直接将命令往文件里面怼就成了;但是你要是想写一个高大上一点的脚本,那就不是简单的命令堆砌了;写得比较好的脚本里,少不了变量;闲来没事,就想着总结一下在shell脚本中,经常出现的一些特殊的变量

有点意思的Shell特殊变量(shell 特殊变量)

  1. 位置参数变量
$0 获取Shell脚本文件名,以及脚本路径
$n 获取Shell脚本的第n个参数,一般情况下,n在1-9之间,如大于9,就需要使用到{},比如${10}
$# 获取Shell脚本后面的参数个数
$* 获取Shell脚本后面的所有参数
$@ 获取Shell脚本后面的所有参数

注意:$*和$@在没有使用双引号括起来时,作用是一样的;但是使用双引号括起来后,就会有区别,区别在于,加上双引号的$*,接收的所有参数是一个整体;而加上双引号的$@,接收的所有参数都是做为一个独立的个体返回给程序的;哎呀!这玩意说得挺绕的,脑壳疼!

  1. 状态变量
$? 返回上一条命令的执行状态,0为True,1为false
$ 返回当前Shell脚本的进程号
$! 返回上一次后台的PID
$_ 返回上一次执行的脚本的最后一个参数

脚本就是要多写才有感觉,光看的话,两分钟后啥也记不得了

Tags:

最近发表
标签列表