在 Linux shell 上, echo $1 应该做什么?

Laz*_*zer 12 unix shell echo

我做了一个echo $1,它打印出使用的默认登录shell是什么。

echo $2从那时起,我得到的只是一个换行符。这是为什么?

Jan*_*nen 23

$1 (或 $2,$3 ...) 应该是给某个脚本的参数。

这是一个示例脚本:

#!/bin/bash

echo "\$1 is now $1"
echo "\$2 is now $2"
echo "\$3 is now $3"
Run Code Online (Sandbox Code Playgroud)

和示例输出

jaba@lappy:/tmp$ ./example.sh 
$1 is now 
$2 is now 
$3 is now 
jaba@lappy:/tmp$ ./example.sh 1 2 3
$1 is now 1
$2 is now 2
$3 is now 3
Run Code Online (Sandbox Code Playgroud)