如何用Linux命令提取表格文本中的某列
文本文件x.txt内容如下:
kaa a:\dkdkdk 123 dfdfdf b:\xxxxxxxxx 3234 j你好x c:\fdfdfv 打开
我现在要提取第二列,即:
a:\dkdkdk
b:\xxxxxxxxx
c:\fdfdfv
解决方案:
grep -a ‘.‘ x.txt | tr -s ‘ ‘ ‘ ‘ |cut -d ‘ ‘ -f 2
对命令的解释,grep -a ‘.‘ x.txt | 作用是将x.txt中的文本安行读出,并管道方式传给tr命令.
tr -s ‘ ‘ ‘ ‘ | 用于合并连续的空格为一个空格,并将结果以管道方式传给cut命令.
cut -d ‘ ‘ -f 2 用于获取第二列数据
生活中有很多这样的问题,比如你要批量去掉windows共享目录,但是
net share xxx /del 每次只能取消一个,我们就要通过net share来列出所有共享结果,这是我们就需要将结果(如下所类似):
kaa a:\dkdkdk dfdfdf b:\xxxxxxxxx j你好x c:\fdfdfv的第1列取出,然后放在批处理命令中自动全部取消。
呵呵,或许你会说,怎么windows和linux混为一谈了呢,这是因为windows上安装了cygwinportable后也可以使用Linux命令,Linux命令的确很强大。
2014-06-25 23:39
顺便给自己的小网站打个广告:www.uhdesk.com 程序员软件大全网 ,不完善,但可以用
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。