Linux 使用TR从字符串中删除控制字符

Linux 使用TR从字符串中删除控制字符,linux,wordpress,bash,ubuntu,tr,Linux,Wordpress,Bash,Ubuntu,Tr,请尝试以下命令: echo”(甜蜜的回忆之后)再玩一次注定要输的游戏“|tr”(“-”| tr')”-“|tr””-” -在甜蜜的回忆之后——再玩一次注定要失败的游戏 (请注意双引号--) 我无法修改命令并传递(null)值,而是必须传递另一个- 请参见此示例和此错误: echo”(甜蜜的回忆之后)再玩天生的输家游戏“|tr”(“|tr”)“|tr”-” tr:tr:当不截断set1时,string2必须为非空当不截断set1时,string2必须为非空您可以使用“tr-d”仅删除字符。这就是您

请尝试以下命令:

echo”(甜蜜的回忆之后)再玩一次注定要输的游戏“|tr”(“-”| tr')”-“|tr””-”

-在甜蜜的回忆之后——再玩一次注定要失败的游戏
(请注意双引号--)

我无法修改命令并传递(null)值,而是必须传递另一个
-

请参见此示例和此错误:

echo”(甜蜜的回忆之后)再玩天生的输家游戏“|tr”(“|tr”)“|tr”-”

tr:tr:当不截断set1时,string2必须为非空当不截断set1时,string2必须为非空

您可以使用“tr-d”仅删除字符。这就是您正在寻找的解决方案吗

echo "(After Sweet Memories) Play Born To Lose Again" | tr -d '(' |  tr -d ')' |  tr ' ' '-'
在甜蜜的回忆再次上演注定要失败的游戏后

你可以使用“tr-d”来移除角色。这就是您正在寻找的解决方案吗

echo "(After Sweet Memories) Play Born To Lose Again" | tr -d '(' |  tr -d ')' |  tr ' ' '-'

在甜蜜的记忆再次丢失后

提供了
tr
解决方案,但
tr
要求您在管道中运行多个实例。您可以使用
sed
在一个过程中完成所有操作

echo "(After Sweet Memories) Play Born To Lose Again" | sed 's/ /-/g; s/[()]//g;'
After-Sweet-Memories-Play-Born-To-Lose-Again
您甚至可能会丢失
回显
(尽管这几乎不是问题…)


sed的/-/g;s/[()]//g;' 提供了
tr
解决方案,但
tr
要求您在管道中运行多个实例。您可以使用
sed
在一个过程中完成所有操作

echo "(After Sweet Memories) Play Born To Lose Again" | sed 's/ /-/g; s/[()]//g;'
After-Sweet-Memories-Play-Born-To-Lose-Again
您甚至可能会丢失
回显
(尽管这几乎不是问题…)


sed的/-/g;s/[()]//g;'您还可以使用一次运行的
tr-d'()'
删除两个括号字符。您还可以使用一次运行的
tr-d'()'
删除两个括号字符