SED:在重复删除代码中使用字符作为变量

SED:在重复删除代码中使用字符作为变量,sed,Sed,我需要使用文本文件每行中包含的数字作为该行上重复删除任务的变量 具体而言,每行; (1) 要选择的数字的起始列位置已知,但不知道结束列的位置。i、 它可以是任意数字长度,但以空格结尾。 (2) 取下这个数字,并在整个生产线的重复删除任务中使用它。我想删除foo和bar之间的所有文本,类似于(1)中给出的次数。foo和bar成对重复(foo-first),重复次数为(1)中的次数,每行可以不同 有人知道如何使用SED吗。Keen,通过SED,找到一种控制SED的方法-i's/foo.*bar//g

我需要使用文本文件每行中包含的数字作为该行上重复删除任务的变量

具体而言,每行; (1) 要选择的数字的起始列位置已知,但不知道结束列的位置。i、 它可以是任意数字长度,但以空格结尾。 (2) 取下这个数字,并在整个生产线的重复删除任务中使用它。我想删除foo和bar之间的所有文本,类似于(1)中给出的次数。foo和bar成对重复(foo-first),重复次数为(1)中的次数,每行可以不同

有人知道如何使用SED吗。Keen,通过SED,找到一种控制SED的方法-i's/foo.*bar//g'键入我一直看到的示例,这将删除从第一个foo到最后一个栏(包括)的所有文本。对于出现的每个foo-bar,我们需要foo和bar之间的所有文本

Update:考虑一个文件,例如TXT

someText 1 foo someOtherText bar someOtherOtherText

someText 2 foo someOtherDiffText bar x x x foo text bar
我们需要回归

someText 

someText x x x
这些数字告诉我们配对foo栏出现的时间,中间有文本,范围为1到100秒

问候

HS

,但请尝试Perl:

perl -pe 's|foo .*? bar||g' file.txt

试试
's/foo.*?bar//g'
。你的规则对我来说不清楚。你能举例说明吗?