GNU/Linux >> Tutoriels Linux >  >> Linux

Créer des données de lecture de texte à partir d'un fichier ?

J'ai un fichier csv qui contient une liste de 600 numéros au format suivant

442030580306

442030580307

J'en ai besoin pour sortir le fichier dans un long fichier comme ci-dessous en lisant les chiffres ci-dessus

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

Des idées sur la meilleure façon d'y parvenir ?

Réponse acceptée :

Quand on veut éventuellement obtenir une donnée JSON – jq est le bon outil :

numbers.csv contenu du fichier :

442030580306
442030580307

jq solution :

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

La sortie :

{
  "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 – en attribuant la phrase courante "new-request-uri-user-part:" en variable $pfx

  • reduce [.[]|tostring][] as $n ({}; ...) – effectuer l'opération de réduction sur la liste des nombres saisis


Linux
  1. Lire des modèles Grep à partir d'un fichier ?

  2. Comment distinguer le binaire des fichiers texte sous Linux

  3. Comment supprimer les retours à la ligne d'un fichier texte ?

  4. Lecture d'un fichier en assembleur

  5. Tirer au hasard un certain nombre de lignes d'un fichier de données

Comment créer des répertoires à partir d'un fichier texte sous Linux

Comment afficher les données d'un fichier texte sous Linux

Script bash :comment lire des données à partir de fichiers texte

Comment extraire des adresses e-mail d'un fichier texte sous Linux

Comment supprimer tous les espaces blancs d'un fichier texte

Comment afficher certaines lignes d'un fichier texte sous Linux ?