我需要使用文件中找到的某些记录的数量来更新 .txt 文件的预告片记录。我正在文件中查找包含值“MAM 002”的记录,对它们进行计数并使用此计数来更新预告片记录,该记录看起来如下:
'TLR241'
假设我在输入文件中发现了 20 次“MAM 002”,我想更新预告片记录,如下所示:
'TLR20'
另外我需要保留预告片记录的特定长度,在本例中预告片记录长度为 4501 字节。
答案1
你应该使用这样的东西:
awk '/MAM 002/{cnt++} {sub(/TLR[0-9]+/,"TLR"(cnt+0))} 1' file
但它当然未经测试(它可能不会做你想做的事,并且可能有更好的方法来做你想做的事),因为你没有提供任何我们可以测试的样本输入/输出。
答案2
如果我理解正确的话,这可能有效:
样本文件:
MAM 002
MAM 002
MAM 002
TLR241
命令:
sed -i "s/TLR.*/TLR$(grep -c "MAM 002" < file)/" file
输出:
MAM 002
MAM 002
MAM 002
TLR3