次のサンプル.txtを考えてみましょう。
ATO N X B
AT H1 X BT
ATOM H25 X BAA
ATOM H3 X BUTZ
ATOM CA X BAT
2-4行のXをawkなどの「A」に置き換えたいので、出力は次のようになります。
ATO N X B
AT H1 A BT
ATOM H25 A BAA
ATOM H3 A BUTZ
ATOM CA X BAT
ファイル内のその場所を強調表示します。
どうすればいいですか?ありがとう
ベストアンサー1
そしてawk
:
awk 'BEGIN{ OFS=FS="" } FNR>=2 && FNR<=4 && $11=="X"{ $11="A" }1' sample.txt
空の文字列を入力フィールドと出力フィールドの区切り文字として使用し、11番目のフィールドが含まれている場合は入力ファイルの定義レコード番号に置き換えますX
。その後、記録を印刷します。