GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erstellen Sie Text, der Daten aus einer Datei liest?

Ich habe eine CSV-Datei mit einer Liste von 600 Nummern im folgenden Format

442030580306

442030580307

Ich brauche es, um die Datei in einer langen Datei wie unten aus dem Lesen der obigen Zahlen auszugeben

         "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
            }
          },

Irgendwelche Ideen, wie man das am besten erreicht?

Akzeptierte Antwort:

Wenn wir schließlich JSON-Daten erhalten möchten – jq ist das richtige Werkzeug:

numbers.csv Dateiinhalt:

442030580306
442030580307

jq Lösung:

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

Die Ausgabe:

{
  "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 – Zuweisen des gemeinsamen Ausdrucks "new-request-uri-user-part:" in die Variable $pfx

  • reduce [.[]|tostring][] as $n ({}; ...) – Durchführen der Reduktionsoperation auf der Liste der eingegebenen Zahlen


Linux
  1. Lesen von Grep-Mustern aus einer Datei?

  2. Dateien komprimieren, während Daten von STDIN gelesen werden

  3. Lesen aus einer Datei in Assembly

  4. Wie erstelle ich eine Datei in Linux aus dem Terminalfenster?

  5. Entfernen Sie ungerade oder gerade Zeilen aus einer Textdatei

So erstellen Sie Verzeichnisse aus einer Textdatei unter Linux

So zeigen Sie Daten aus einer Textdatei in Linux an

Bash-Scripting:So lesen Sie Daten aus Textdateien

4 Schritte zum Erstellen von Linux-Benutzern aus einer CSV-Datei mit Ansible

So extrahieren Sie E-Mail-Adressen aus einer Textdatei unter Linux

So entfernen Sie alle Leerzeichen aus einer Textdatei