您的位置:首页 > 运维架构 > Linux

如何用Linux命令提取表格文本中的某列

2014-06-25 23:39 519 查看
文本文件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 程序员软件大全网 ,不完善,但可以用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: