gpt4 book ai didi

linux - 无法使用 tr 实用程序翻译特定字符

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:41:53 26 4
gpt4 key购买 nike

假设我有一个名为 doc 的文件,其内容为:

{}
[]

现在我想将所有的 '{' 和 '[' 翻译成 '(' 和 '}' 以及 ']' 翻译成 ')'。到目前为止,我可以使用以下 shell 命令正确翻译“{}”和“[”,但无法翻译“]”:

cat doc | tr [\[] [\(] | tr [\{] [\(] | tr [\}] [\)] | tr [\]] [\)] | cat

输出是:

()
(]

到目前为止,它可以翻译除']'之外的其他字符。你知道为什么吗?

这是一个 shell 练习,要求将 .c 文件中的所有 '{}' 和 '[]' 转换为 '()'。在这里简单说一下。

最佳答案

tr 只接受字符集和范围——您不需要像正则表达式范围那样用 [] 将它们包围起来。您可以使用一个命令完成所有翻译:

echo 'hello [ world }' | tr '[]{}' '()()' 

关于linux - 无法使用 tr 实用程序翻译特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6907579/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com