tr -cs string1 string2
命令中
-c
是指取string1
中集合的补集(complement the set of values in string1),这里就说取a-zA-Z
之外的字符
-s
是指在替换完成后将string2
的内容压缩到单个字符,加上上一条就是连续的非字母字符压缩到一个'\n'(八进制012 = 10,即ASCII中的line feed)
综上,tr -sc 'A-Za-z' '\012'
就是将连续的非字母内容转换成回车,即将单词分行输出。