私が awk で気に入っているのは、指定した任意のフィールドの条件を満たすファイルからすべての行を取得できることです。例えば、
awk '$3~/hi/' < test.txt # print all lines where the third field matches the pattern "hi"
また
awk '$2>=2' < test.txt # print all lines where the second field is greater or equal to 2
UNIX のパワーについて学んでいる初心者として、私はこれに完全に魅了されています。指定した任意のフィールドでのみ正規表現置換を実行する簡単な方法があるかどうか疑問に思っていますか? たとえば、3 番目のフィールドのみで正規表現置換を行いたいとします。私の現在の方法は、必要なフィールドを「切り取り」、perlまたはsedを使用してそのフィールドを置換し、それを元のファイルに「貼り付ける」ことです。しかし、これを達成するためのより効率的な方法があるかどうか疑問に思っています。
ありがとう