精华内容
下载资源
问答
  •   linux uniq命令怎样将文件某一列重复的行删除?     例如文件 number1.txt 中存储了你的电话簿信息,其中第一列是联系人,第二列是手机号码。电话簿中存在一个人有多个手机号码的情况,但你只想让每个人仅...


      linux uniq命令怎样将文件中某一列重复的行删除?


      例如文件 number1.txt 中存储了你的电话簿信息,其中第一列是联系人,第二列是手机号码。电话簿中存在一个人有多个手机号码的情况,但你只想让每个人仅保留一个手机号码,将多余的手机号去除。

    number1.txt :

    Li 13800001115
    Li 13800001112
    Zhang 13800001118
    Wang 13800001112
    Zhang 13800001114
    Wu 13800001113
    

    这时候可以分三步完成:
    第一步,将你要筛选的列放到最后,方便排重

    awk '{printf("%s %s\n", $2, $1)}' number1.txt > number2.txt
    

    number2.txt :

    13800001115 Li
    13800001112 Li
    13800001118 Zhang
    13800001112 Wang
    13800001114 Zhang
    13800001113 Wu
    

    第二步,利用 sort + uniq 命令去除重复的行

    sort -k 2 number2.txt | uniq -f 1 > number3.txt
    

      sort -k 2 是将 number2.txt 根据第二列的值进行排序,列的分隔符默认是空白字符。 在使用 uniq 命令前先需要排序,因为当重复的行并不相邻时,uniq 命令是不起作用的。 uniq -f 1 选项是 比较时跳过前 1 列,这样就能根据第2列的值是否相同去排重了。

    number3.txt :

    13800001112 Li
    13800001112 Wang
    13800001113 Wu
    13800001114 Zhang
    

    第三步,还原文件格式

    awk '{printf("%s %s\n", $2, $1)}' number3.txt > number1.txt
    

    number1.txt :

    Li 13800001112
    Wang 13800001112
    Wu 13800001113
    Zhang 13800001114
    

      最终大功造成啦!可能你的文件中每一列使用的分隔符不是默认的空白符,这时候也不用担心,你完全可以用 awk 命令将你的分隔符替换成空白符即可,同样,还原的时候只需要执行逆过程而已。

    展开全文
  • 原始文件 beforedelete.csv 内容如下 1st,2nd,3rd,4th,5th,6th 1st-a,2nd-a,3rd-a,4th-a,5th-a,6th-a ...想要把 csv 中的第二和第四的内容删除,可使用如下命令 cat beforedelete.csv | awk -F, '{$2=null;...

    原始文件 beforedelete.csv 内容如下

    1st,2nd,3rd,4th,5th,6th
    1st-a,2nd-a,3rd-a,4th-a,5th-a,6th-a
    1st-b,2nd-b,3rd-b,4th-b,5th-b,6th-b

    想要把 csv 中的第二列和第四列的内容删除,可使用如下命令

    cat beforedelete.csv | awk -F, '{$2=null;$4=null;print $0}' | awk 'BEGIN{OFS=",";}{print $1,$2,$3,$4}' > afterdelete.csv

    命令执行完毕生成的 afterdelete.csv 内容如下

    1st,3rd,5th,6th
    1st-a,3rd-a,5th-a,6th-a
    1st-b,3rd-b,5th-b,6th-b

    删除文件前三列

    方法一:将第一列,第二列,第三列置空,重定向到一个新的文件中

    awk '{$1="";$2="";$3="";print $0}' filename > newfilename

    方法二:

    awk '{for(i=4;i<NF;i++)printf("%s ",$i);print $NF}' filename >newfilename

     

    展开全文
  • shell下如何删除文件某一列

    千次阅读 2019-02-26 15:42:00
    答:cat file | awk '{$1=null;print $0}' (删除一列) 转载于:https://www.cnblogs.com/dakewei/p/10437797.html

    答:cat file | awk '{$1=null;print $0}' (删除第一列)

    转载于:https://www.cnblogs.com/dakewei/p/10437797.html

    展开全文
  • awk删除文件某一列

    万次阅读 2016-11-15 10:51:53
    cat file |awk ' { $5=null;print $0 }'
    cat file |awk ' { $5=null;print $0 }'

    展开全文
  • 删除文件的第一列 -Linux

    万次阅读 2017-05-27 09:32:23
    删除文件 text中第一列  方式一  awk '{$1="";print $0}' text 方式二  sed -e 's/[^ ]* //' text
  • Linux技巧--删除某列

    万次阅读 2018-10-10 19:30:08
    ## 删除逗号分隔的文件test中的第二 cat ./test | awk -F, '{$2=null;print $0}' 2. 使用AWK的输出分隔符,进行替换分隔符 awk 'BEGIN{OFS=&quot;,&quot;;}{print $1,$2,$3,$4,$5,$6}' &amp;gt; ./...
  • 当你要删除某一目录下及其子目录下的所有类型的文件或文件夹时,使用一般的rm方法在配以正则是行不通的。。。 正确做法为: findfolderPath-option [-print] [-exec -ok command] {} \; e.g.: 删除当前...
  • linux删除文件中含有字符的行

    千次阅读 2019-04-21 15:12:21
    linux删除文件中含有字符的行
  • linux 删除文件行的方法

    万次阅读 2018-08-31 08:50:15
    删除行 sed -i '1d' filename 范围删除删除1-3行 sed -i '1,3d' filename 删除第n行 sed -i 'nd' filename 删除最后行 sed -i '$d' filename
  • 1,命令:  awk '{$1="";$2="";$3="";print $0}' filename >> newfile  将第一列,第二列,第三列置空,重定向到一个新的文件
  • Linux文件操作高频使用命令

    万次阅读 多人点赞 2019-08-28 16:47:38
    文章目录0....touch abc.sh #新建文件 1.查看操作 查看目录: ll #显示目录文件详细信息 查看文件内容: cat|head|tail命令 cat abc.txt #查看abc的内容 head -5 abc.txt #...
  • Linux Shell中删除和替换文件某一行的方法

    万次阅读 多人点赞 2014-05-17 22:44:30
    sed是个很好的文件处理工具,本身是个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作,下面先了解一下sed的用法 sed命令行格式为:  sed [-nefri] ‘command’ 输入...
  • Linux反选删除文件

    万次阅读 2015-05-26 16:35:47
    Linux反选删除文件 最简单的方法是 # shopt -s extglob (打开extglob模式) # rm -fr !...Linuxrm删除指定文件外的其他文件方法汇总 ...Linux删除文件和文件夹常用命令如下: 删除文件: rm file 删
  • Linux 批量删除文件目录 查找文件

    千次阅读 2017-09-01 09:51:37
    WPF CheckBox 滑块 样式 开关 Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 ...导入导出Markdown文件 丰富的快捷键 效果图 样式代码 <Setter Property="Control.Tem
  • Linux 学习之创建、删除文件和文件夹命令

    万次阅读 多人点赞 2017-09-05 18:26:38
    今天学习了几个命令,是创建、删除文件和文件夹的,在linux里,文件夹是目录,下面说下我学习的命令。 创建文件夹【mkdir】 、mkdir命令使用权限 所有用户都可以在终端使用 mkdir 命令在拥有权限的文件夹...
  • LINUX文件删除但磁盘空间不释放

    万次阅读 2017-02-23 18:17:44
    LINUX文件删除但磁盘空间不释放 转自:http://www.jb51.net/LINUXjishu/224652.html 1、错误现象 运维的监控系统发来通知,报告台服务器空间满了,登陆服务器查看,根分区确实没有空间了,如下图所示:...
  • linux/windows批量删除csv文件

    千次阅读 2019-07-01 18:22:25
    需要批量删除某文件夹下所有csv文件或者txt文件行 方法 将该文件夹导入到linux系统; 打开命令窗口,cd到该文件夹下 运行如下命令 #删除该文件夹下所有csv文件的第行 sed -i "1d" *.csv #删除该...
  • Linux文件系统 及文件系统删除原理

    千次阅读 2020-03-02 20:23:25
    Linux文件系统 inode block superblock inode table : inode 元数据 block的存放地址 data area : data 元数据: 文件的属性信息 大小 创建时间 权限 surperblock:记录文件系统整体信息 inode 总量 已使用 ...
  • 删除文本中最后一列-linux

    千次阅读 2017-03-09 13:51:58
    1,文件1.txt中每一行以空格分割,删除1.txt中最后一列,如下所示,需要删除 c e g  a b c  d e f e  d d d d g  命令 awk '{$NF="";print}' 1.txt
  • awk删除文件最后一列

    万次阅读 2011-12-18 19:26:41
    使用awk删除用特定分隔符分割的文件的最后一列文件以“:”分隔符 绿色标识的为文件的最后一列 [root@localhost zhaoyj]#cat file.txt Mike Harrington:[510] 548-1278:250:100:25 Christian Dobbins:...
  • 注:转自 Linux文件删除,但是df之后磁盘空间没有释放  Linux 磁盘空间总是报警,查到到大文件,删除之后,df看到磁盘空间并没有释放。 查找了下发现系统对rm进行了alias ,因为Linux对删除操作没有回收站机制...
  • linux删除文件的第

    万次阅读 2016-12-09 13:12:45
    1,删除文件file 中第行内容  命令:sed -i '1d' file
  • 如下文件所示,只想提取红框中的内容,即进行提取第一列,且去除第一行的操作 则用到下列命令行: awk 'NR == 1 {next} {print $1}' file.txt > file_col1.txt #NR==1指的是不打印第一行,print $1指的是...
  • AWK 删除文件最后一列

    千次阅读 2019-10-09 19:14:35
    如下包含路径的文件名: $cat test.txt src/core/lib/channel/handshaker_registry.c \ src/core/lib/compression/compression.c \ src/core/lib/compression/message_compress.c \ src/core/lib/compressi...
  • 需要用到shell命令awk 在前面、后面、指定添加相同字符 (1)给文件中的每行开头插入字符的方法:awk '{print "需要添加的字符...(3)给文件中的每行的指定插入字符的方法:awk '$0=$0X"' fileNa...
  • linux shell脚本删除某一行(sed)

    千次阅读 2017-09-21 09:44:43
    如果有个abc.txt文件,内容是:  aaa  bbb  ccc  ddd  eee  fff  如果要删除aaa,那么脚本可以这样写:  sed -i '/aaa/d' abc.txt  如果删除的是个变量的值,假如变量是var,应该写成:  sed...
  • A.txt里面内容如下A;B;C;write by luohao199621;1.要将“B;”换为"glad to see you; hello!"linux 命令如下sed -ie 's/B;...删除linux 命令如下sed -ie 's/C;/ /g' A.txt (将"C;"替换为空...
  • linux 删除文件恢复

    千次阅读 2007-09-27 19:48:00
    Linux文件系统的反删除方法Ext3文件系统结构的简单介绍在Linux所用的Ext3文件系统中,文件是以块为单位存储的,默认情况下每个块的大小是1K,不同的块以块号区分。每个文件还有个节点,节点中包含有文件所有者,...
  • linux 快速删除大量/大文件

    千次阅读 2020-06-25 00:23:13
    linux 快速删除大量/大文件 1、快速删除大量文件: 假如你要在linux删除大量文件,比如100万、1000万,像/var/spool/clientmqueue/的mail邮件,/usr/local/nginx/proxy_temp的nginx缓存等,那么rm -rf *可能就...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 288,012
精华内容 115,204
关键字:

linux文件删除某一列

linux 订阅