Shell 特殊变量及其含义

变量 含义
$0 当前脚本的文件名。
$n(n≥1) 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是 $1,第二个参数是 $2。
$# 传递给脚本或函数的参数个数。
$* 传递给脚本或函数的所有参数。
$@ 传递给脚本或函数的所有参数。当被双引号" "包含时,$@ 与 $* 稍有不同。
$? 上个命令的退出状态,或函数的返回值。
$$ 当前 Shell 进程 ID。对于 Shell 脚本,就是这些脚本所在的进程 ID。

编写test.sh

#!/bin/bash

echo "Process ID: $$"
echo "File Name : $0"
echo "First Parameter: $1"
echo "Second Parameter: $2"
echo "All Parameter 1: $@"
echo "All Parameter 2: $*"
echo "Total: $#"

运行命令

. ./test.sh Shell Linux

执行结果

Process ID: 5943
File Name: bash
First Parameter : Shell
Second Parameter : Linux
All parameters 1: Shell Linux
All parameters 2: Shell Linux
Total: 2

加引号,¥*(美元符号,这里打不出来)把参数作为一个字符串整体(单字符串)返回,$@把每个参数作为一个字符串返回

猜你喜欢

转载自blog.csdn.net/ABCisCOOL/article/details/109325488