• Online Tools
  • - Calculators
    • Character Count
  • - Download
    • TikTok Download
    • DouYin Download
  • - Web Tools
    • BASE64
    • Base64 to Image
    • Image to Base64
    • URL Encoding
    • JavaScript
    • Timestamp
    • Unicode Converter
    • JSON Format
    • Modify Extension
    • Make List
    • CSS Optimizer
  • - Encryption Tools
    • MD5 Encryption
    • Random Generator
  • - Image Tools
    • Image Compression
    • QR Code Generator
    • QR Code Reader
    • Wallpaper Preview
    • Image EXIF
  • - Info Sheets
    • Blood Type Heredity
    • Clothing Sizes
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
Linuxはawkテキスト処理ツールを使用して複数行のマージを実現する例
2022-02-20

Linuxシステムではawkテキスト処理ツールを使用し、複数行をマージする必要がある場合があります。これはawknext文を使用する必要があります。以下、Linuxでawkを使用して複数行のマージを実現する方法を紹介します。必要な方はご理解ください。

awknext文は、ループで行単位で一致し、nextに遭遇すると現在の行がスキップされ、次の文が直接無視されます。で行ないます。

コードは次のとおりです。

  text.txtの内容は:

  a

  b

  c

  d

  e

  [chengmo@centos5 shell]$ awk ‘NR%2==1{next}{print NR,$0;}’ text.txt

  2 b

  4 d

レコード行番号を2で割った場合、現在の行はスキップされます。次のprint NRでは、$0も実行されません。次の行から、プログラムはNR%2値の判断を開始します。このときレコード行番号は:2で、次の文ブロックが実行されます:‘print NR,$0’

awk next使用例: コードは次のとおりです。

要件:

ファイル:text.txt形式:

  web01[192.168.2.100]

  httpd ok

  tomcat ok

  sendmail ok

  web02[192.168.2.101]

  httpd ok

  postfix ok

  web03[192.168.2.102]

  mysqld ok

  httpd ok

awkで出力フォーマットを次のように変更する必要があります。

  web01[192.168.2.100]: httpd ok

  web01[192.168.2.100]: tomcat ok

  web01[192.168.2.100]: sendmail ok

  web02[192.168.2.101]: httpd ok

  web02[192.168.2.101]: postfix ok

  web03[192.168.2.102]: mysqld ok

  web03[192.168.2.102]: httpd ok

分析:

分析では、「web」行が含まれている行をスキップし、次の行に内容を統合する必要があることがわかりました。

  [chengmo@centos5 shell]$ awk ‘/^web/{T=$0;next;}{print T“:\t”$0;}’ test.txt

  web01[192.168.2.100]: httpd ok

  web01[192.168.2.100]: tomcat ok

  web01[192.168.2.100]: sendmail ok

  web02[192.168.2.101]: httpd ok

  web02[192.168.2.101]: postfix ok

  web03[192.168.2.102]: mysqld ok

  web03[192.168.2.102]: httpd ok

Linuxがawkを使用して複数行のマージを行う方法について説明しましたが、本文ではnext文を使用するのが便利で、ループマッチングではnextに遭遇すると自動的にスキップして複数行のマージを実現します。


ソース元URL:https://dopubox.com/article/p/6eca1fd8b17388cc

Other Tools
  • Character Count TikTok Download DouYin Download BASE64 Base64 to Image Image to Base64 URL Encoding JavaScript Timestamp Unicode Converter JSON Format Modify Extension Make List CSS Optimizer MD5 Encryption Random Generator Image Compression QR Code Generator QR Code Reader Wallpaper Preview Image EXIF Blood Type Heredity Clothing Sizes
  • 一力が本因坊初防衛
    2024-05-30

    古本屋を巡り、顧みられなくなった作品、作家を生き返らせた九大大学院教授没後20年 教え子や研究仲間を支える「清新な光景」
    2024-05-30

    藤井聡太八冠が勝ち、最終局へ 将棋叡王戦で2勝2敗
    2024-05-31

    小学館も来週に報告書公表
    2024-05-31

    むのたけじ賞、名称変更 「生前に障害者差別発言」
    2024-05-31

    デザインジャーナリストによる新しいデザイン誌の登場です!
    2024-06-01

    【光る君へ】平安時代、強烈なエピソードで知られた2人の受領とは
    2024-06-01

    富士山麓のダイナミックな食材を味わう“奥・山梨”のガストロノミー〈Restaurant SAI 燊〉。
    2024-06-01

    河合隼雄賞に八木詠美さん「休館日の彼女たち」、湯澤規子さん「焼き芋とドーナツ」
    2024-06-02

    ニコライ・バーグマンが手がける北欧のジュエリーブランド〈フローラダニカ〉旗艦店が南青山にオープン。
    2024-06-03

    「2億円トイレ」のイメージ図など公開 大阪・関西万博
    2024-06-04

    「KOTARO NUKAGA(天王洲)」が移転し拡張。約386平米の巨大スペースに
    2024-06-05

    「犬派?猫派?」(山種美術館)開幕レポート。初公開から名作まで勢揃い
    2024-06-04

    田名網敬一「TANAAMI!! AKATSUKA!! / 45 rpm」展、集英社マンガアートヘリテージ トーキョーギャラリーで開催
    2024-06-04

    週末見たい展覧会5選。今週はTRIO展、吉田克朗展、建築の構造デザインに焦点を当てた展覧会など。【2024年6月第2週】
    2024-06-05

    3日間限定発売! 名作パントンチェアが新たな魅力を纏った限定カラーで登場。
    2024-06-05

    宗教2世のドラマが受賞 第50回放送文化基金賞
    2024-06-06

    美術家藤井光さん個展「終戦の日/WAR IS OVER」 希望か絶望か…大分・佐伯の地下弾薬庫跡にこだまする泣き声
    2024-06-07

    今週末に見たい展覧会ベスト8。閉幕の横浜トリエンナーレから、「梅津庸一 クリスタルパレス」、石川九楊の2ヶ月連続個展まで
    2024-06-06

    もしあの時に戻れたら…歌人・穂村弘が話題書『迷子手帳』で明かす、今も忘れられない「失敗」
    2024-06-07

    ©  Dopu Box
    💛