我需要做的是:
我希望递归地匹配从string1到fixed_string的text_files上的所有内容(都包括在内),并将结果输出到result_file。
我的命令如下:
sed -nf /path/to/patterns_file /path/to/lists/* > result_file例如:
4321/14。------------------------------------------------------patterns_file的内容如下:
/\<4321\/14\>/,/------------------------------------------------------/p
/\<4319\/14\>/,/------------------------------------------------------/p
/\<5183\/14\>/,/------------------------------------------------------/p
/\<487\/08\>/,/------------------------------------------------------/p
/\<8767\/14\>/,/------------------------------------------------------/p
/\<8768\/14\>/,/------------------------------------------------------/p
/\<8769\/14\>/,/------------------------------------------------------/p
/\<10270\/01\>/,/------------------------------------------------------/p
/\<8354\/14\>/,/------------------------------------------------------/p
/\<8883\/14\>/,/------------------------------------------------------/p
/\<3978\/13\>/,/------------------------------------------------------/p
/\<6344\/13\>/,/------------------------------------------------------/p
/\<3882\/09\>/,/------------------------------------------------------/p
/\<8881\/14\>/,/------------------------------------------------------/p
/\<9913\/14\>/,/------------------------------------------------------/p
/\<6596\/13\>/,/------------------------------------------------------/p我的test_files如下(位于列表目录中)
JUZGADO_CIVIL_10_PRO_2014-10-24.TXT
JUZGADO_CIVIL_11_PRO_2014-10-24.TXT
JUZGADO_CIVIL_12_PRO_2014-10-24.TXT
JUZGADO_CIVIL_13_PRO_2014-10-24.TXT
JUZGADO_CIVIL_14_PRO_2014-10-24.TXT
JUZGADO_CIVIL_15_PRO_2014-10-24.TXT
JUZGADO_CIVIL_16_PRO_2014-10-24.TXT
JUZGADO_CIVIL_17_PRO_2014-10-24.TXT
JUZGADO_CIVIL_18_PRO_2014-10-24.TXT
JUZGADO_CIVIL_19_PRO_2014-10-24.TXT
JUZGADO_CIVIL_1_PRO_2014-10-24.TXT
JUZGADO_CIVIL_20_PRO_2014-10-24.TXT
JUZGADO_CIVIL_21_PRO_2014-10-24.TXT
JUZGADO_CIVIL_22_PRO_2014-10-24.TXT
JUZGADO_CIVIL_23_PRO_2014-10-24.TXT
JUZGADO_CIVIL_2_PRO_2014-10-24.TXT
JUZGADO_CIVIL_3_PRO_2014-10-24.TXT
JUZGADO_CIVIL_4_PRO_2014-10-24.TXT
JUZGADO_CIVIL_5_PRO_2014-10-24.TXT
JUZGADO_CIVIL_6_PRO_2014-10-24.TXT
JUZGADO_CIVIL_7_PRO_2014-10-24.TXT
JUZGADO_CIVIL_8_PRO_2014-10-24.TXT
JUZGADO_CIVIL_9_PRO_2014-10-24.TXT
JUZGADO_NOTARIAL_PRO_2014-10-24.TXT上传到这里的一个txt文件的内容:获取朱扎多_民事性_18_专业人士_2014-10-24民
其余的文件类似于这个文件。
问题是,当string1和fixed_string之间有另一个匹配表达式时,我会得到重复或三重行作为输出,如下所示:
[...output omitted...]
Expte. N°: 8769/14 -Foja: 9- JARA MELAGRANI, DIEGO
C/MUNICIPALIDAD DE RESISTENCIA S/EJECUCION DE HONORARIOS -
estesestese
CARLOS D. LUGON
-Abogado Secretario -
Juzgado Civil y Comercial Nº 18
"2014 Año de la concordia, el diálogo y la paz - S.S. Francisco"
Expte. Nº 8769/14 - MMMN
Resistencia, 20 de octubre de 2014.
Téngase al Dr. DIEGO JARA MELAGRANI por presentado, parte,
con el patrocinio letrado del Dr. MAURO DANIEL FOGLIATTI, con domicilio
legal constituido, dándosele en autos la intervención que por derecho
corresponda. A lo demás, estése a lo resuelto en el Expte.Nº 8768/14 que
corresponda. A lo demás, estése a lo resuelto en el Expte.Nº 8768/14 que
corre por cuerda.- NOT.-
corre por cuerda.- NOT.-
OMAR A. MARTINEZ
OMAR A. MARTINEZ
- Juez -
- Juez -
Juzgado Civil y Comercial Nº 18
Juzgado Civil y Comercial Nº 18
NOTA DE SECRETARIA:
NOTA DE SECRETARIA:
Se deja constancia que a fs.12/13 del Expte.Nº
Se deja constancia que a fs.12/13 del Expte.Nº
8768/14 caratulado "JARA MELAGRANI, DIEGO C/ MUNICIPALIDAD DE RESISTENCIA
8768/14 caratulado "JARA MELAGRANI, DIEGO C/ MUNICIPALIDAD DE RESISTENCIA
S/ EJECUCION DE HONORARIOS", se ha ordenado la acumulación de la presente
S/ EJECUCION DE HONORARIOS", se ha ordenado la acumulación de la presente
causa a aquellos actuados.- CONSTE. SECRETARIA, 20 de octubre de 2014.-
causa a aquellos actuados.- CONSTE. SECRETARIA, 20 de octubre de 2014.-
[...output omitted...]
------------------------------------------------------
[...output omitted...]例如,在“8768/14”之间
'8769/14' and '------------------------------------------------------'.如果不清楚我想实现什么或问题是什么,我可以尝试进一步澄清这个问题。
怎样才能解决这个问题?是否有更好和更有效的解决办法?
发布于 2014-10-27 16:20:29
因为在8769/14“文档”中,您会发现字符串"8768/14",因此两个模式匹配相同的行。您需要对起始范围更加具体,例如
/^Expte. N°: 8769\/14\>/,/------------------------------------------------------/p只在一行开头匹配。
发布于 2014-12-21 00:18:06
不过,我找到了解决这个问题的方法,添加了命令'uniq‘,如下所示
sed -nf /path/to/patterns_file /path/to/lists/* | uniq > result_file无论如何,感谢那些花时间阅读和帮助的人。
https://askubuntu.com/questions/542121
复制相似问题