相关疑难解决方法(0)

使用Bash脚本删除重复的条目

我想从文本文件中删除重复的条目,例如:

kavitha= Tue Feb    20 14:00 19 IST 2012  (duplicate entry) 
sree=Tue Jan  20 14:05 19 IST 2012  
divya = Tue Jan  20 14:20 19 IST 2012  
anusha=Tue Jan 20 14:45 19 IST 2012 
kavitha= Tue Feb    20 14:00 19 IST 2012 (duplicate entry) 
Run Code Online (Sandbox Code Playgroud)

有没有办法使用Bash脚本删除重复的条目?

期望的输出

kavitha= Tue Feb    20 14:00 19 IST 2012 
sree=Tue Jan  20 14:05 19 IST 2012  
divya = Tue Jan  20 14:20 19 IST 2012  
anusha=Tue Jan 20 14:45 19 IST 2012
Run Code Online (Sandbox Code Playgroud)

bash shell

170
推荐指数
3
解决办法
17万
查看次数

如何逃避awk中的单引号

我想做以下事情

awk 'BEGIN {FS=" ";} {printf "'%s' ", $1}'
Run Code Online (Sandbox Code Playgroud)

但是以这种方式逃避单引号是行不通的

awk 'BEGIN {FS=" ";} {printf "\'%s\' ", $1}'
Run Code Online (Sandbox Code Playgroud)

这该怎么做?感谢帮助.

awk

95
推荐指数
5
解决办法
10万
查看次数

删除重复行而不进行排序

我在Python中有一个实用程序脚本:

#!/usr/bin/env python
import sys
unique_lines = []
duplicate_lines = []
for line in sys.stdin:
  if line in unique_lines:
    duplicate_lines.append(line)
  else:
    unique_lines.append(line)
    sys.stdout.write(line)
# optionally do something with duplicate_lines
Run Code Online (Sandbox Code Playgroud)

这个简单的功能(uniq无需先排序,稳定排序)必须作为简单的UNIX实用程序提供,不是吗?也许是管道中过滤器的组合?

询问的原因:在我无法从任何地方执行python的系统上需要此功能

shell scripting filter uniq

92
推荐指数
5
解决办法
5万
查看次数

Linux Bash命令从CSV文件中删除重复项

我将合并多个CSV文件。我想做的是:

1)从文件中删除重复的行,但是,我需要检查多列作为构成重复项的标准。我怎么做?

2)然后创建第二个输出文件以查看被删除的内容,以防万一删除了不应该删除的内容。

3)创建一个项目列表作为输入文件来运行(如果此行在此特定列中包含此单词,则删除整个行。

如果有人可以通过命令帮助我,那就太好了!如果需要澄清,请告诉我。

以下是数据外观的示例(以下是建议的示例):

我有一个这样的csv文件:

column1    column2

john       kerry
adam       stephenson
ashley     hudson
john       kerry
etc..
Run Code Online (Sandbox Code Playgroud)

我想从此文件中删除重复项,以仅获取1处的问题:

column1    column2

john       kerry
adam       stephenson
ashley     hudson
Run Code Online (Sandbox Code Playgroud)

对于问题3,我想获取第二个列表...表示第一个列表的输出并进一步整理此列表。我想要一个像input.txt这样的文件,其中包含:

adam
Run Code Online (Sandbox Code Playgroud)

然后,最终输出将是:

column1    column2

john       kerry
ashley     hudson
Run Code Online (Sandbox Code Playgroud)

因此,示例中的input.txt文件包含单词adam(通过这种方式,我可以列出一长串单词来检查input.txt文件)。对于#3,我需要一个代码片段,它将检查所有单词输入文件的CSV所有行的第1列,然后从csv中删除所有匹配项。

linux csv bash

2
推荐指数
1
解决办法
4169
查看次数

标签 统计

bash ×2

shell ×2

awk ×1

csv ×1

filter ×1

linux ×1

scripting ×1

uniq ×1