在PHP
中,我们可以将一个变量从文件名作为file.php?key=value
或传递到脚本中file.php -key=value
。在 Shell 脚本中是否有任何等效的选项可以这样做?
我想在终端中运行脚本;类似于 ./file.sh -key=value
将变量传递到 shell 脚本以进行进一步处理。
和_GET
shell 参数彼此非常不同。 _GET
是 HTTP 请求参数的扩展。Shell 脚本在技术上可以处理获取请求并接受查询字符串参数,但我非常怀疑这就是您想要的。相反,您可以将参数传递给脚本,只需用空格分隔它们(并根据需要使用引号)。
您可以使用 shell 中的许多可执行文件来执行此操作。甚至 PHP 脚本也可以接受这些参数,这些参数存储在argv
.
是的:
file.sh value1 value2
value1
并且value2
将暴露给脚本中的变量$1
和$2
;整个字符串value1 value2
也将显示在$*
.
您可以使用shift
内置的 shell 一次获取一个变量。