Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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
Linux 需要创建接受参数的shell脚本_Linux - Fatal编程技术网

Linux 需要创建接受参数的shell脚本

Linux 需要创建接受参数的shell脚本,linux,Linux,为了接受两个参数,我有一个名为createproject.sh的脚本文件 #!/bin/bash echo "Project Name :$1 " echo "Group Id : $2 " mvn archetype:generate -DgroupId=$2 -DartifactId=$1 -DarchetypeArtifactId=maven- archetype-quickstart -DinteractiveMode=false

为了接受两个参数,我有一个名为createproject.sh的脚本文件

     #!/bin/bash
     echo "Project Name :$1 "
     echo "Group Id : $2 "
     mvn archetype:generate -DgroupId=$2 -DartifactId=$1 -DarchetypeArtifactId=maven-      archetype-quickstart -DinteractiveMode=false

     cd $1
     mvn eclipse:eclipse -Dwtpversion=2.0  
我必须通过命令来执行

  sh createproject.sh projectname com.test.app
projectname和com.test.app所在的位置需要项目名称和包结构,但我需要执行以下操作

 sh createproject.sh -P projectname and -G com.test.app

这样用户就可以被通知为-p:Project Name和-G:group Id。请让我知道这些更改

查看Bash关于

位置参数是由一个或多个数字表示的参数,而不是单个数字0。位置参数是在调用shell时从shell的参数分配的,可以使用set builtin命令重新分配。位置参数N可以引用为${N},当N由一个数字组成时,可以引用为$N。不能使用赋值语句将位置参数赋值给。set和shift内置命令用于设置和取消设置它们。请参见Shell内置命令。执行外壳函数时,位置参数将临时替换。请参见外壳函数

展开由多个单个数字组成的位置参数时,必须将其括在大括号中


查看Bash的文档,了解

位置参数是由一个或多个数字表示的参数,而不是单个数字0。位置参数是在调用shell时从shell的参数分配的,可以使用set builtin命令重新分配。位置参数N可以引用为${N},当N由一个数字组成时,可以引用为$N。不能使用赋值语句将位置参数赋值给。set和shift内置命令用于设置和取消设置它们。请参见Shell内置命令。执行外壳函数时,位置参数将临时替换。请参见外壳函数

展开由多个单个数字组成的位置参数时,必须将其括在大括号中

例如:

#!/bin/bash
echo "the $1 eats a $2 every time there is a $3"
echo "bye:-)"
例如:

#!/bin/bash
echo "the $1 eats a $2 every time there is a $3"
echo "bye:-)"