我正在处理一个API调用,它会让我返回最新的版本号,它会生成UUID(4e2cab57b35a098993cbaec2455add)或日期格式的字符串行(2023-03-23T04%253a38%253a09Z)。只有当版本号是以日期格式而不是UUID格式生成时,我才必须对版本号应用解码逻辑,并且转换将是lo 2023-03-23T04%253a38%253a09Z到2023-03-23T04:38:09Z有人能帮我一下吗。
4e2cab57b35a098993cbaec2455add
2023-03-23T04%253a38%253a09Z
2023-03-23T04:38:09Z
of1yzvn41#
如果你不想限制自己只能使用bash,你可以考虑使用sed或awk。这两个工具都已经支持条件替换,但是如果你需要有条件地执行额外的操作,你可以在shell中使用case语句。
bash
sed
awk
case
revision=.... case "$revision" in *-*T*Z) # perform date conversion revision="$(printf '%s' "$revision" | sed 's/%253a//g')" ;; *) # handle everything else, e.g. UUIDs ;; esac
8fq7wneg2#
我试过低于命令,它为我工作
echo ${var//substring to be replaced/$replace value}
2条答案
按热度按时间of1yzvn41#
如果你不想限制自己只能使用
bash
,你可以考虑使用sed
或awk
。这两个工具都已经支持条件替换,但是如果你需要有条件地执行额外的操作,你可以在shell中使用case
语句。8fq7wneg2#
我试过低于命令,它为我工作