我想要比较同一文件中的多个列,看看我在哪一行有不同之处,在本例中是前4列。该文件如下所示:
Column1 Column2 Column3 Column4 Column5
AA AA AA AA AA
GG GG GG GG GG
CC GC CC CC CC
CC TT CC GC TT
如果我这样做:
awk -F
我希望通过子目录递归地从几个文档中删除重复行,但除非前面的行相同,即对于这些行,否则不应将一行视为重复:
foo
foo
foo
bar
baz
foo
bar
其结果应该是:
foo
bar
baz
foo
bar
我最初使用awk的解决方案失败了,因为seen不是解决这个问题的正确方法。
#!/usr/bin/env bash
shopt -s globstar
for file in **/*.md; do
awk '!seen[$0]++' "$file" > "temp" && mv "temp&
我有一个文件,列中有数以百万计的条目,出于这个原因,我使用了awk,这是我知道的最快的计算方法。我需要计算列中值的平均值,我是这样做的:
allsamples="R3 SM261_T SM382_T R6"
for sample in $allsamples
do
awk BEGIN {print "ID","Coverage"}; '{sum+=$2} END { print "Average = ",sum/NR}' $sample.dep > $sample.mean_coverage.temp &g
我不确定是否可以这样做,但我想比较两个不同文件中的两个字符值。如果它们匹配,我想从其中一个文件中打印槽2中的字段值。下面是一个例子
# File 1
Date D
Tamb B
# File 2
F gge0001x gge0001y gge0001z
D 12-30-2006 12-30-2006 12-30-2006
T 14:15:20 14:15:55 14:16:27
B 15.8 16.1 15
下面是我想要做的问题背后的想法
if [ (field2) from (file1) == (field1) from (file2) ] ; do
echo (field1
awk -vN=2 'n>=N;/last pid.*/{++n}' file
我想在第二个regex匹配之后打印出所有的行,包括包含regex的行。这是接近,但它没有打印出一行包含正则表达式。能帮上忙吗?
示例输入
last pid: something
blah
blah
last pid: something else
this
is
what
i
want
期望产出:
last pid: something else
this
is
what
i
want
我有一棵被压扁的树,就像:
a<1 and b<1 and c<1 then result=1
a<1 and b>1 and d<1 then result=2
a<1 and b>1 and d>1 then result=3
我要打印删除与前一行匹配的每一行的子字符串--例如,结果是:
a<1 and b<1 and c<1 then result=1
b>1 and d<1 then result=2
d>1 then result=3
本质上,上一
我有档案:
cat abc.txt
Data is here
ASDF 1234
GHJKL 5678
!@#$% 0011
我使用的是命令"(echo“随机数据是:,";cat abc.txt) \ xargs > red1.csv”
我需要以以下格式打印数据**
Random data is: Data is here
ASDF 1234
GHJKL 5678
我正在开发一个awk一行,用逗号代替文件中的选项卡(并用\\N替换缺少的值,为MySQL select into做准备)。
下面的链接 (底部)建议了以下方法,以避免遍历变量:
echo a b c d | awk '{gsub(OFS,";")}1'
head -n1 flatfile.tab | awk -F $'\t' '{for(j=1;j<=NF;j++){gsub(" +","\\N",$j)}gsub(OFS,",")}1'
显然,尾随的1 (可以是一个数字