2行の間のファイルからブロックを抽出します

nixmind

私はこれを含むファイル/出力を持っています:

igw_id = igw-96788cf1
private_route_tables_ids = [
    rtb-c2adcda4,
    rtb-c5a3c3a3,
    rtb-c4adcda2
]
private_subnets_cidrs_ipv4 = [
    10.20.10.0/24,
    10.20.11.0/24,
    10.20.12.0/24
]
private_subnets_ids = [
    subnet-6057333b,
    subnet-6be7bf0c,
    subnet-f13419b8
]
public_route_tables_ids = [
    rtb-74a9c912,
    rtb-c5adcda3,
    rtb-2aabcb4c
]
public_subnets_cidrs_ipv4 = [
    10.20.0.0/24,
    10.20.1.0/24,
    10.20.2.0/24
]
public_subnets_ids = [
    subnet-6157333a,
    subnet-17e7bf70,
    subnet-303f1279
]

すべてのパブリックサブネットIDを抽出し、空白なしで印刷したいと思います。

この正規表現を使用しました

sed -n '/public_subnets_ids/{:a;N;/\]/!ba;s/[[:space:]]//g;s/,/\n/g;s/.*public_subnets_ids\|\].*//g;p}' my_file.txt

そして、出力は次のとおりです。

=[subnet-6157333a
subnet-17e7bf70
subnet-303f1279

しかし、代わりにこれを取得したいと思います。

subnet-6157333a
subnet-17e7bf70
subnet-303f1279

実際、私はsedにスペースと改行を何(s/[[:space:]]//g)も置き換えないように指示し、次に最初の新しい行を置き換えてから最初のサブネットを起動するので、最初の改行の後でこれを試すときに正規表現を処理します

sed -n '/public_subnets_ids = \[[\n\r\s]+\\n/{:a;N;/\]/!ba;s/[[:space:]]//g;s/,/\n/g;s/.*public_subnets_ids\|\].*//g;p}' my_file.txt

それは出力を与えません、それはそれが何にも一致しないことを意味します。

上記の正規表現を改善して、サブネットIDのみを別々の行に指定するのを手伝ってください。

SLePort

このsedの別のアプローチ:

sed -n '/public_subnets_ids/,/]/{//!{s/[ ,]*//g;p;}}' file
  • '/public_subnets_ids/,/]/:を含む行public_subnets_idsから次の行まで]
  • //!:アドレスに一致するものを除いて、一致する行に
  • //!{s/[ ,]*//g;p;}:コンマとスペース文字を削除し、結果を出力します

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

PowershellとRegexを使用して、テキストファイルから行のブロックを抽出します

sedを使用して、ファイルの2つの式の間の行ブロックのn番目または最後の出現を抽出します

タブスペースと改行の間のログファイルからmysqlクエリを抽出します

awkでファイルから行のブロックを削除します

2Dnumpyから行のブロックを抽出します

条件付きのxmlファイルからテキストのブロックを抽出します

xmlファイルからテキストのブロックを抽出します

多くの異なるファイルでブロックパターンを見つけ、そこから特定の行を選択的に抽出します

Perlを使用して、ログファイルから2つのシンボル間のデータを1行ずつ抽出します

ezdxfを使用して、dxfファイルのブロック参照からハッチの詳細を抽出する

テキストファイルから2行間のデータを抽出します

xml ファイルから特定のブロックを抽出する

40行のファイルから2行ごとに抽出し、新しいファイルを作成します

.tar.bz2アーカイブのファイルから行を抽出します

bashはファイルから特定の行を抽出します

Rのcsvファイルから行を抽出します

Pythonのtxtファイルから行を抽出します

2セットのテキストファイルから一意の行を抽出します

Bashのログファイルからイベント間の時間を抽出します

ログファイルから特定のXMLを抽出します

csvファイルから抽出された各文字の行インデックスを取得します

ファイル2の列の範囲に基づいて、ファイル1から行を抽出します

ファイルからテキストのブロックを削除します

ファイルから2つの値を抽出します

Python:乱数を抽出します。マーカー間のテキストファイルからの行の

Azureロジックアプリのhttp応答からファイルを抽出します

ZIPファイルを抽出してからすべてのサブzipファイルを抽出します

テキスト処理-2つのテキストファイル:1つのファイルからブロック行を読み取り、別のテキストファイルの文字列の後に追加します

ファイル内のすべての行から文字列を抽出します

TOP 一覧

  1. 1

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  2. 2

    CSSのみを使用して三角形のアニメーションを作成する方法

  3. 3

    ZScalerと証明書の問題により、Dockerを使用できません

  4. 4

    ドロップダウンリストで選択したアイテムのQComboBoxスタイル

  5. 5

    別のホストからTomcat Managerアプリにアクセスする

  6. 6

    PyCharmリモートインタープリターはプロジェクトタブにサイトパッケージのコンテンツを表示しません

  7. 7

    Windows 10でのUSB入力デバイスの挿入/取り外しの検出

  8. 8

    Python / SciPyのピーク検出アルゴリズム

  9. 9

    MLでのデータ前処理の背後にある直感

  10. 10

    useRefに反応してコンポーネントをスクロールして表示する

  11. 11

    モーダルダイアログを自動的に閉じる-サーバーコードが完了したら、Googleスプレッドシートのダイアログを閉じます

  12. 12

    パンダは異なる名前の列に追加します

  13. 13

    PictureBoxで画像のブレンドを無効にする

  14. 14

    Windows 10 Pro 1709を1803、1809、または1903に更新しますか?

  15. 15

    Pythonを使用して、リストからデータを読み取り、特定の値をElasticsearchにインデックス付けするにはどうすればよいですか?

  16. 16

    LinuxでPySide2(Qt for Python)をインストールするQt Designerはどこにありますか?

  17. 17

    Material-UIでTextFieldエラーの色を条件付きでオーバーライドする方法

  18. 18

    goormIDEは、ターミナルがロードするデフォルトプロジェクトを変更します

  19. 19

    MatplotlibまたはSeabornを使用して、グループ化されたデータから複数のプロットを生成するにはどうすればよいですか?

  20. 20

    Luaの文字列から特定の特殊文字を削除するにはどうすればよいですか?

  21. 21

    Flutterにファイルピッカープラグインを追加するにはどうすればよいですか?

ホットタグ

アーカイブ