问题标签 [getopts]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - BASH:如何创建将所有脚本参数作为数组返回的函数
我是 bash 的新手,我有一个问题,我无法在互联网上的任何地方找到解决方案。
在我尝试自己编程之前,我想看看处理这种情况的标准方法是什么。
基本上我想将getopts捕获到数组...
我不确定我是否足够清楚,所以让我们尝试看一下这个 PHP 示例:
这就是我想要的: myscript -a 1 -b 2
到目前为止,我发现的每一次提到 getopts 都暗示我需要确切地知道我想要得到什么:
有没有一种方法可以将所有参数的关联数组传递给脚本,无论这些选项是什么,所以我总是可以做这样的事情:
然后我可以做一些我自己的验证等......
再次抱歉,如果我遗漏了一些明显的东西,我真的是 bash 新手,我非常感谢从哪里开始的任何帮助或指导。
非常感谢您提前。
bash - 从命令行在bash中覆盖变量
我有以下 bash 脚本。它计算 ax^2 + bx + c。如您所见,要求 a、b 和 c 并将 x 作为命令行参数。
我现在想要它做的是(不对上面的代码进行任何修改)在命令行中从文件中获取(覆盖)a、b 和 c 的值(一个接一个地列出的值,全部在一行中)并跳过在执行脚本时要求他们。
我虽然 getopts 将是用于此目的的功能,但我无法弄清楚如何使用它。或者是别的什么?
谢谢。
bash - 使用 getopts grep 文件并将其导出到文件:为什么提到另一个参数?
我使用 getopts 获取 MAC 地址并通过日志文件 grep 该 MAC 地址。它看起来像这样:
我想在使用该选项时将结果导出到文件-x
:
在这一点上,我不明白如何从 -x 获取论点以进入我的案例的 m) 部分。
一点帮助会很棒。
谢谢
bash - 为什么我的 shell 脚本在第二次尝试时失败?
这个脚本应该接受一组搜索词并返回一个格式化的 URL 来搜索 google。
这样做很好,所以我决定添加一个选项来搜索特定站点,或者忽略该站点,使用-s
or-S
标志。
这在您第一次运行脚本时有效,但在随后的每次尝试中都会失败。
打开一个新的终端窗口或重新启动终端都可以清除此问题并允许在失败前再尝试一次。
剧本:
需要进行哪些更改才能使此脚本更可靠?
bash - OPTIND 变量如何在 shell 内置 getopts 中工作
我的shell脚本很简单,如下:
我做了一些测试如下:
我无法理解如何OPTIND
使用不同的命令行调用,我对输出感到困惑。
你能帮忙弄清楚计算的机制OPTIND
吗?
bash - 为管道 bash 脚本提供选项
在将脚本内容传送到 bash 以执行时,我试图为 bash 脚本提供选项。
在 shell 中执行脚本就像./script.sh -p mysql
工作一样。目的是将脚本存储在存储库中,所以我尝试了curl -L example.com/my/script | bash -p mysql
. 然而这抛出/usr/bin/mysql: /usr/bin/mysql: cannot execute binary file
。
我需要做什么来实现我的目标?
shell - 语法外壳脚本?“意外出现的单词”getopts
大家晚上好,我们期待在 Ubuntu 8.04 上执行 shell 脚本,但它返回一个特殊错误:
所以这里是脚本的预览:
问题已解决: 脚本在 dos 中:
在 d2u.sh 中插入以下行:
现在执行:
现在脚本已准备好运行。
试试这个脚本,输入以下命令:
并且脚本不再在dos中。
谢谢大家!:)
parsing - 如何检查 ash 脚本中的额外参数?
我有一个 ash 脚本,我需要在其中检查用户是否输入了任何愚蠢的内容。正确的用法是:
我需要检测用户是否像这样唤起它:
为了解析正确的参数,我使用
如何检测是否有任何剩余的未解析参数?
bash - 在 Bash 中解析命令行参数的最佳方法?
经过几天的研究,我仍然无法找出在 .sh 脚本中解析 cmdline args 的最佳方法。根据我的参考资料,getopts cmd 是可行的方法,因为它“在不干扰位置参数变量的情况下提取和检查开关。意外开关或缺少参数的开关被识别并报告为错误。 ”
位置参数(例如 2 - $@、$# 等)在涉及空格时显然不能很好地工作,但可以识别常规参数和长参数(-p 和 --longparam)。我注意到在传递带有嵌套引号的参数时,这两种方法都失败了(“this is an Ex. of ""quotes"".")。这三个代码示例中的哪一个最能说明处理 cmdline args 的方式?大师不推荐使用getopt功能,所以我试图避免它!
示例 1:
示例 2:
示例 3:
bash - 如何使用 sort 和 getopts 使用 bash 脚本对文件进行排序?
这是我按列对文件进行排序的 bash 脚本。
现在它完全符合我的需要,但我也需要将文件名作为参数。
现在的输入是 ./sortScrpt -2。
我需要输入看起来像 ./sortScript -2 names.txt
任何帮助都会很棒。谢谢