【问题标题】:bash metachars in pattern substitution模式替换中的 bash 元字符
【发布时间】:2018-06-02 21:05:48
【问题描述】:

我通常使用 bash 模式替换 ${parameter/pattern/string},我想知道在其他工具中是否有任何替换 string 类似 & 的字符(例如 sedawk)。

我正在尝试使用 bash 模式替换在每对十六进制数字之前插入 0x1a0e22fe ---> 0x1a 0x0e 0x22 0xfe

如果&sedawk 一样工作,那就太简单了:

S=1a0e22ff
echo "${S//??/ 0x&}"

替换字符串中有元字符吗?

【问题讨论】:

  • 以下任何答案对您有用吗?请提供反馈,以便我们更好地帮助您。
  • 两个答案都有效,但我已经在我的脚本中使用了这不是我想要的。我需要的是有人确认没有 bash 技巧可以做同样的事情。

标签: bash substitution metacharacters


【解决方案1】:

恐怕没有。这对 Bash 来说太复杂了。改用sed 之类的工具会更好。

input | sed 's/../0x&/g' | output

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-19
    • 2015-02-05
    • 1970-01-01
    • 1970-01-01
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多