この一見複雑なタスクに対する簡単な解決策があるかどうか、私は興味があります:
このファイルがあるとします:
lineone
linetwo
linethree
linefour
lineone
linetwo
linethree
linefour
lineone
lineone
lineone
linetwo
linethree
linefour
この結果を得るために考えられる簡単な方法はありますか:
lineone[1]
linetwo[1]
linethree[1]
linefour[1]
lineone[2]
linetwo[2]
linethree[2]
linefour[2]
lineone[3]
lineone[4]
lineone[5]
linetwo[3]
linethree[3]
linefour[3]
言葉で言えば、ファイル内での出現順に各行に番号を付けることができる単純な bash アルゴリズムはありますか? 追加のストレージを含む複雑なソリューションがなければ、これを行う方法を理解できません。また、回線の置換に使用する通常のコマンドは、ここでは役に立ちません。sed は、出現するすべての行を同じ値に置き換えるだけであり、文字列の置換 ( ${string/substring/replace} ) は行の順序を維持しないため、役に立ちません。
とても有難い。