Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unix Shell脚本参数_Unix - Fatal编程技术网

Unix Shell脚本参数

Unix Shell脚本参数,unix,Unix,我刚开始用Unix编写shell脚本,所以我完全是个新手 我想阅读用户运行脚本时给出的参数 例: 我想为参数-一个用户给出的abc阅读 到目前为止,我的代码是: if ( $1 = "-a" ) then var=$2 fi echo $var 我得到一个错误。Bash使用一个名为的外部程序来执行布尔测试,但该程序主要通过其别名[使用 if ( $1 = "-a" ) 应该成为 if [ $1 = "-a" ] 如果您使用[或 if test $1 = "-a" Bash使用一个名为的

我刚开始用Unix编写shell脚本,所以我完全是个新手

我想阅读用户运行脚本时给出的参数 例:

我想为参数
-一个
用户给出的
abc
阅读

到目前为止,我的代码是:

if ( $1 = "-a" )
then var=$2
fi
echo $var

我得到一个错误。

Bash使用一个名为的外部程序来执行布尔测试,但该程序主要通过其别名
[
使用

if ( $1 = "-a" )
应该成为

if [ $1 = "-a" ]
如果您使用
[

if test $1 = "-a" 

Bash使用一个名为的外部程序来执行布尔测试,但该程序主要通过其别名
[
使用

if ( $1 = "-a" )
应该成为

if [ $1 = "-a" ]
如果您使用
[

if test $1 = "-a" 
你应该注意if和
[


你应该小心if和
[

之间的空格,你会得到什么错误?脚本:1:script:-a:未找到使用方括号而不是括号:
如果[$1=“-a”]
你会得到什么错误?脚本:1:script:-a:未找到使用方括号而不是括号:
如果[$1=“-a”]
我不知道
[]
实际上在做什么+1我想很多人没有意识到
[
实际上是一个可执行文件。不确定,也不能马上测试它,但Bash有一个扩展/增强/改进的测试,
[
我认为它是内置的。我不知道这就是
[]
实际上是在做+1我想很多人没有意识到
[
实际上是一个可执行文件。不确定也不能马上测试它,但是Bash有一个扩展/增强/改进的测试,
[[
,我认为它是内置的。