很抱歉,由于我不熟悉shell脚本,因此措辞不佳。
我正在尝试编写脚本,我想接受诸如unix date命令之类的args。
示例:
$ date '+%I:%M %p'
08:45 PM
那我怎么在我的剧本中做这样的事呢?
编辑:我在我的脚本中尝试做的是以与date命令相同的方式传递参数。
因此,如果我的脚本要将所有%的参数更改为foo,它将执行以下操作:
$ ./myscript '%a bar'
foo bar
答案 0 :(得分:1)
感谢@tripleee我能够提出一个解决方案,允许您在字符串arg中替换多个关键字。
以下是代码:
res="${1}"
res="${res//"%a"/water}"
res="${res//"%b"/chocolate}"
echo "$res"
输入:
./myscript "like %a for %b"
输出:
like water for chocolate
这个方法会遍历arg中要替换的每个关键字,即使它不在那里,所以它不是很有效但是它可以完成工作。