GNU/Linux >> Znalost Linux >  >> Linux

Vytvořit data pro čtení textu ze souboru?

Mám soubor csv, který má seznam 600 čísel v následujícím formátu

442030580306

442030580307

Potřebuji, aby byl výstup souboru v jednom dlouhém souboru, jako je ten níže, ze čtení výše uvedených čísel

         "new-request-uri-user-part:442030580306": {
            "query_string": {
              "query": "new-request-uri-user-part:442030580306",
              "analyze_wildcard": true
            }
          },
          "new-request-uri-user-part:442030580307": {
            "query_string": {
              "query": "new-request-uri-user-part:442030580307",
              "analyze_wildcard": true
            }
          },

Máte nějaké nápady, jak toho nejlépe dosáhnout?

Přijatá odpověď:

Když chceme případně získat data JSON – jq je správný nástroj:

numbers.csv obsah souboru:

442030580306
442030580307

jq řešení:

jq -s '"new-request-uri-user-part:" as $pfx | reduce [.[]|tostring][] as 
        $n ({}; .[($pfx + $n)] |= {"query_string": {"query": ($pfx + $n), "analyze_wildcard": true }})' numbers.csv

Výstup:

{
  "new-request-uri-user-part:442030580306": {
    "query_string": {
      "query": "new-request-uri-user-part:442030580306",
      "analyze_wildcard": true
    }
  },
  "new-request-uri-user-part:442030580307": {
    "query_string": {
      "query": "new-request-uri-user-part:442030580307",
      "analyze_wildcard": true
    }
  }
}
  • "new-request-uri-user-part:" as $pfx – přiřazení běžné fráze "new-request-uri-user-part:" do proměnné $pfx

  • reduce [.[]|tostring][] as $n ({}; ...) – provedení operace zmenšení na seznamu vstupních čísel


Linux
  1. Upravit příchozí poštu z textu/prostého na text/html?

  2. Náhodně nakreslit určitý počet řádků z datového souboru?

  3. Čtení Grepových vzorů ze souboru?

  1. Jak rozeznat binární soubory od textových souborů v linuxu

  2. Jak odstraním nové řádky z textového souboru?

  3. Odstraňte liché nebo sudé řádky z textového souboru

  1. 4 kroky k vytvoření uživatelů Linuxu ze souboru csv pomocí Ansible

  2. 4 způsoby, jak vytvořit textový soubor v terminálu Linux

  3. Vytvořte PEM ze souboru PPK