2010年10月8日星期五

小技巧:如何把竖着排列的数据转换成横着排列

最开始想到的是用 xargs 命令,这样就可以把数据显示出来了。

cat filename  | xargs

但是xargs是专为执行命令开发的,所以当数据头尾有双引号或者单引号是会被删掉的。
之后想到的是用替换命令把行尾的回车替换成空格

cat filename | sed -e 's/\n/ /'
可惜sed对回车的正规表达式支持不够。

最后我改用perl,perl的正规表达式很强,该有的都有,不该有的也有:)命令如下
cat filename | perl -pe 's/\n/ /'

perl对处理文字方面的确很强。可以与其他命令串联组合使用,很实用。