UNIX:如何在列表中一次显示每个字母

时间:2018-10-09 17:39:59

标签: unix

我已经做出了提供以下输出的命令

A 一种 一种 一种 一种 一种 C C C 问 问

我只需要显示每个字母一次。我已经尝试过tr -s'A-Z',但是似乎没有用

1 个答案:

答案 0 :(得分:0)

鉴于空格,您的命令不起作用。
首先将其删除,并在完成后将其插入:

echo "A A A A A A C C C Q Q" | tr -d ' ' | tr -s 'A-Z' | sed 's/./& /g;s/ s//'

另一种可能性是

echo "A A A A A A C C C Q Q" | tr -s ' ' '\n' | sort -u | tr '\n' ' '

更棘手的一个:

echo "A A A A A A C C C Q Q" | sed -r ':m s/(.) \1/\1/g;t m'