Sed 数字递增的单词替换
我有一个大的文本文件,其中word数据出现了10000多次。我想知道a如何进行条件替换,因此第一次出现在文档中时,它将使用bash更改为NO1,第二次更改为NO2,以此类推。我在考虑使用bash编写一些复杂的脚本,但我想一定有一种更简单的方法。Sed 数字递增的单词替换,sed,substitution,Sed,Substitution,我有一个大的文本文件,其中word数据出现了10000多次。我想知道a如何进行条件替换,因此第一次出现在文档中时,它将使用bash更改为NO1,第二次更改为NO2,以此类推。我在考虑使用bash编写一些复杂的脚本,但我想一定有一种更简单的方法。awk'{ awk '{ for (i=1;i<=NF;i++) { if ($i == "DATA") printf("%s%s", "NO"++n, OFS); else printf(
awk'{
awk '{
for (i=1;i<=NF;i++) {
if ($i == "DATA") printf("%s%s", "NO"++n, OFS);
else printf("%s%s", $i, OFS)
if (i==NF) printf "\n"
}
}' file > outFile
对于(i=1;i)单词数据是否在同一行中多次出现?由于要替换的字符串出现了这么多次,您不希望使用shell来执行此操作,而是希望使用一些实用程序。我冒昧地删除了bash标记,并将问题的措辞改为更精确。请在检查单词:awk'{for(i=1;i
awk '{for (i=1; i<=NF; i++) if ($i=="DATA") $i = "NO" ++n} {print}' file > outFile
perl -pe 's/DATA/ "NO" . ++$n /ge' file_in > file_out