给出文件input.txt
,它具有以下内容:
He likes cats, really?
输出会是这样:
H
e
l
i
k
s
c
a
t
,
r
l
y
?
注意字符的输出顺序并不重要。
给出文件input.txt
,它具有以下内容:
He likes cats, really?
输出会是这样:
H
e
l
i
k
s
c
a
t
,
r
l
y
?
注意字符的输出顺序并不重要。
如何:
echo "He likes cats, really?" | fold -w1 | sort -u
您可以使用sed
如下:
sed 's/./\0\n/g' input.txt | sort -u
一个使用grep -o .
把每一个字符上换行和sort -u
删除重复的方式:
$ grep -o . file | sort -u
或者不要求awk
纯粹书面sort -u
或多个命令的解决方案:
$ awk '{for(i=1;i<=NF;i++)if(!a[$i]++)print $i}' FS="" file
一个AWK方式:
awk '{$1=$1}1' FS="" OFS="\n" file | sort -u
为什么字符不会与空+新线取代?我的意思是他们仍然在那里。 除了'\ 0',我们还可以使用'&',它覆盖了sed手册。 '&'参考模式空间的整个匹配部分。这个作品是一样的: 'sed's /./& \ n/g'input.txt |排序-u' – siulkilulki 2016-10-14 16:23:21