有很多问题表明如何反转一个句子中的每个单词,我可以用Python或Javascript这样做,但我怎么能用Linux命令呢?看起来tac
可能是一个选项,但似乎这可能会反转行和单词,而不仅仅是单词?还有哪些工具可以做到这一点?我完全不知道。我知道rev
和tac
以及awk
似乎都是竞争者......
所以我想来自:
cat dog sleep
pillow green blue
为:
tac god peels
wollip neerg eulb
**轻微跟进
从this reference看起来我可以使用awk
将每个字段分成单个字符数组,然后编写for循环以这种方式手动反转每个字。这很尴尬。当然,有更好/更简洁的方法吗?
答案 0 :(得分:0)
尝试使用此尺寸:
sed -e 's/\s+/ /g' -e 's/ /\n/g' < file.txt | rev | tr '\n' ' ' ; echo
它会折叠所有空间并将标点符号作为&#34;单词&#34;的一部分,但看起来它(至少大多数情况下)是有效的。 Hooray for sh
!