Linux 美元、1美元和2美元是什么意思?
我的问题是关于bash程序的,它在这本关于编写树莓pi(bash,Python,C)的大书中 有一个示例程序可以展示if在bash中是如何工作的,但无论我们对该程序的描述读了多少遍,它似乎都无法正确地解释它的功能(我知道,如果我想在一本1000页的书中完整地介绍bash教程,这就是我来这里的原因) 下面是代码:Linux 美元、1美元和2美元是什么意思?,linux,bash,Linux,Bash,我的问题是关于bash程序的,它在这本关于编写树莓pi(bash,Python,C)的大书中 有一个示例程序可以展示if在bash中是如何工作的,但无论我们对该程序的描述读了多少遍,它似乎都无法正确地解释它的功能(我知道,如果我想在一本1000页的书中完整地介绍bash教程,这就是我来这里的原因) 下面是代码: #!/bin/bash if test $# -ne 2; then echo "You have to pass 2 arguments to the command"
#!/bin/bash
if test $# -ne 2; then
echo "You have to pass 2 arguments to the command"
#argument / parameter, whatever you prefer
exit 1
else
echo "Argument 1: $1, argument 2: $2"
fi
我知道,-ne2
的意思是:不等于2,所以它检查$\code>是否等于2,但我不明白它是做什么的($\code>)。->第一个问题
在else
中,它会打印$1
和$2
,但我认为$variablename
会打印该变量的值。整数怎么可能是变量?->第二个问题
是的,我在谷歌上搜索过,没有找到任何有用的东西(也许搜索不够?),这就是我来这里的原因
我将感谢任何形式的帮助,无论是自己阅读的链接,还是简短的解释。
提前感谢:)该$#
指的是在运行时收到的参数数量,而不是特定的参数<代码>$1
被执行脚本时命令行位置1中的任何内容替换。$#
表示命令行参数或位置参数的数量
$1
和$2
分别表示传递的第一个和第二个命令行参数非常感谢!这很有帮助。这也是可以在手册页和静态网页中搜索到的东西。不确定这是否值得StackOverflow响应。如果您要使用bash
,我强烈建议您阅读本手册!在终端中,manbash
或在PDF文件中。