J'ai deux fichiers. Le premier fichier a des détails constants (comme le fichier de référence). Un autre fichier a des données dynamiques. Il a des valeurs associées aux premières touches de fichier à l'aide d'un script shell.
file1.txt p> file2.txt p> sortie.txt code> comme: p>
3 Réponses :
Utiliser awk: sortie: p>
Essayez ceci:
#!/bin/bash FILE1=File1.txt FILE2=File2.txt IFS="|" read -a Header < $FILE1 ColumnsCount=${#Header[@]} while read line; do read -a Values <<< $line echo -n "{" for ((i=0; i < $ColumnsCount; i++)); do echo -n "${Header[$i]}: ${Values[$i]}" if [[ $i -lt $((ColumnsCount - 1)) ]]; then echo fi done echo "}" done < $FILE2
Voici ma solution
awk -F "|" 'NR==FNR {first= $1; second=$2; third=$3;} NR > 1{print "{" first ":" $1 "\n" second ":" $2 "\n" third ": "$3 "}" }' File1.txt File2.txt {CIN:1234 Template:QWERTY Date: 2019-03-18} {CIN:5678 Template:ASDF Date: 2019-03-18} {CIN:9012 Template:ZXCVB Date: }
Avez-vous essayé quelque chose (pas mon bowvote, BTW)?
... ce qui est à dire - une bonne question n'est pas seulement une spécification pour le code que vous voulez que quelqu'un d'autre écrit, mais est en fait une question sur un problème isolé que vous avez rencontré pendant le code d'écriture vous-même i>, montrant votre effort existant et où / comment vous êtes coincé.