tr 不替换空格但删除字符

tr 不替换空格但删除字符

我有一个字符串animal: dog,我想tr修改为只有animal dog(之间有一个空格)。

例如:

echo 'animal: dog' | tr ':' ' '
animal  dog

上面有2个空格。

我尝试将替换为空字符串,但是:

echo 'animal: dog' | tr ':' ''
tr: when not truncating set1, string2 must be non-empty

我可以使用 -s 获得所需的结果,但随后我必须调用 tr 两次。有没有办法在一个人身上做到这一点?

echo 'animal: dog' | tr ':' ' ' | tr -s ' '
animal dog

答案1

使用选项-d.outputs 。echo animal: dog | tr -d :animal dog

相关内容