我有一个简单的bash脚本,包含两行:
#!/bin/bash
myArr=("a","a")
字符串
不过,我需要把脚本放到yaml文件中,所以它必须是一行。我试过#!/bin/sh;myArr=("a","a")
,但不起作用。有没有办法在一条线上做?
yaml文件用于创建cron作业。它看起来像:
- name: cron for xxxx
cron:
name: job1
job: <one line script>
型
我需要#!/bin/bash
的原因是我需要在bash中使用array。
2条答案
按热度按时间nzk0hqpo1#
我需要把脚本中的yaml文件,所以它必须是一行
你似乎在这里急于下结论。YAML文件格式本身并不强制您将所有内容放在一行中。也许读取和执行
job:
的软件有这样的限制,但是YAML完全允许多行字符串顺便说一下:bash中的数组是用空格定义的,而不是用
,
。字符串
为了验证这个例子,你可以把它放到一个yaml解析器中,例如:https://yaml-online-parser.appspot.com/的数据。
有关所有多行构造的快速概述,请参见https://yaml-multiline.info/。
y3bcpkx12#
使用类似于
字符串