Google compute engine Google计算引擎实例上的启动脚本能否使用命令行参数运行?

Google compute engine Google计算引擎实例上的启动脚本能否使用命令行参数运行?,google-compute-engine,Google Compute Engine,我们通过以下命令行创建实例: gcloud compute instances create instance-name [--stuff otherstuff] --metadata-from-file startup-script=scriptname.sh 有没有办法为启动脚本指定命令行参数?我们在几个实例中使用了几乎相同的脚本,似乎重复太多。似乎没有办法让脚本在其内部使用类似命令的参数,比如在bash中使用$1和$2等 其他元数据变量可用于以类似方式将额外信息传递到脚本中,但是,该脚本

我们通过以下命令行创建实例:

gcloud compute instances create instance-name [--stuff otherstuff] --metadata-from-file startup-script=scriptname.sh

有没有办法为启动脚本指定命令行参数?我们在几个实例中使用了几乎相同的脚本,似乎重复太多。

似乎没有办法让脚本在其内部使用类似命令的参数,比如在bash中使用
$1
$2


其他元数据变量可用于以类似方式将额外信息传递到脚本中,但是,该脚本必须专门设计为一个Google Compute Engine启动脚本,并始终将该特定变量随它一起传递给实例。

也许您可以将变量参数本身存储为元数据,然后让启动脚本在实例创建时从元数据服务器获取它们。或者简单地使用perl/sed等的一些组合。在创建实例时,输入一个定制的scriptname.sh文件,其中包含存储在env变量中的参数。您是说我应该通过常规元数据传递特定值,并在启动脚本中使用它?我使用的shell命令是否同时支持'--metadata'和'--metadata from file'参数?我不认为它说了什么,所以我猜它会。[--metadata KEY=VALUE,[KEY=VALUE,…][--metadata from file KEY=LOCAL\U file\U PATH,[KEY=LOCAL\U file\U PATH,…]@snetch你找到解决方案了吗?如果是的话,你们能把它作为答案贴出来,让其他有类似问题的用户可以参考它吗。谢谢,我没有。我唯一想要的就是jarmod的评论,而这并不是我想要的。我想我会贴出来的。