示例脚本如下所示,
#!/bin/bash
function Usage() {
echo "Usage: $0 [-q] [-d]"
echo ""
echo "where:"
echo " -q: Query info"
echo " -d: delete info"
echo ""
}
# Exit if no argument is passed in
: ${1?Usage}
while getopts "qd" opt; do
case $opt in
q)
echo "Query info"
;;
d)
echo "Delete info"
;;
*)
Usage;
exit 1
;;
esac
done
这个呢?
function Usage() {
echo "Usage: $0 [-q] [-d]"
echo ""
echo "where:"
echo " -q: Query info"
echo " -d: delete info"
echo ""
}
# Exit if no argument is passed in
: ${1?"$(Usage)"}
总之,我觉得这更有可读性:
if [ $# -lt 1 ] ; then
Usage
fi
另一个想法是这样处理:
mode=""
while getopts "qdh" opt; do
case $opt in
q)
mode="Query info"
;;
d)
mode="Delete info"
;;
h)
Usage
exit 0
;;
*)
Usage >&2
exit 1
;;
esac
done
if [ -z "${mode}" ] ; then
Usage >&2
exit 1
fi
如何将字符串的命令行参数传递给java main方法,以便调用另一个类中的特定方法? 我需要能够通过“java Statdriver mean”调用mean方法,或者“java Statdriver std”调用标准偏差方法,或者不传递任何参数将导致通过终端调用mean方法。 按我的方式做似乎不起作用。我认为我的问题在于如果,否则如果,否则循环。 这是我的密码:
问题内容: 我正在尝试从命令行运行Java计算器应用程序。参数如下:运算符operon1操作数2。我可以为+和-成功运行Java程序。 例如 Java Calc + 2 4 Java Calc-10 4 但是当我尝试运行 java * 2 5时 给出输出: .classpath .project .settings 我通过反复试验发现使用单引号(’‘)解决了我的问题。所以我现在有两个问题。 1.使
要启动Java程序,我可以传递如下参数: 在gradle命令行中有哪些好的方法可以做到这一点: 这是正在建造的。格雷德尔:
如果你需要在命令行下插入一个值,通常需要使用引号将其括起来,尤其是当其包含空格时更是如此。 shellquote 函数可以携带任意数量的参数(包括数组), 它会使用引号将每个参数都括起来并返回一个可以传递到 Shell 命令行上的以空格间隔的字符串。 在下面的例子中,我们想要创建一个用于文件改名的 exec 资源, 然而源文件名和目标文件名都包含空格,因此在命令行上需要正确地使用引号将它们括起来。
我尝试将参数从命令行传递到gradle。 我的身材是: 当我这样做时: 我得到这个: 我的问题是我应该为main提供什么?任何java文件包的名称?有具体的路径吗?什么应该是真正的源集?
public static void main(String[]args){ 公共类CustomConfiguration{ public static void readConfig(String filename){//从config.properties文件读取 } 我的问题是如何将“a”传递给CustomConfiguration类?