我需要用 mac os 中的当前日期时间(日期命令)替换文件中的{{date}}字符串。我通常在 Ubuntu 中使用sed命令,但它在 MacO 中不起作用。我尝试了很多东西,但没有奏效。
这是我正在做的事情:
sed -i '' 's/{{date}}/\``date``/g' file.xml
但是 sed 并没有像我预期的那样评估 date 命令。如何在 Mac Os X 的 sed 中评估 DATE 命令?(使用山狮,但我想没关系)
您只需将 sed subtitution 括在"
而不是 single之间'
:
这可以工作:
$ echo "hellodatehere" | sed "s/date/`date`/"
helloMon Apr 22 16:49:35 CEST 2013here
在你的情况下:
sed -i "s/{{date}}/`date`/g" file.xml
如果您想稍微解析日期,可以执行以下操作:
date_value=`date "+%d.%m.%Y %H:%M:%S"`
sed -i "s/{{date}}/$date_value/g" file.xml