Puncte:-1

Ieșire ecou cu variabila care se comportă diferit

drapel us

Am cele două fișiere de mai jos: names.csv

Nume Prenume
Silas, Puternic
Arturo Zi, Zimmerman

iar testul.sh

#!/bin/bash

în timp ce IFS=, citiți -r câmp1 câmp2
do
    nume=$câmp1.$câmp2
    echo "Aici este numele $name"
    echo „$numele este inclus în fișier”
facut < names.csv

Când test.sh este rulat.. Primesc următoarea ieșire unde numele lipsește pe a doua ieșire ecou.

Aici este numele Prenume. Prenume
 este inclusă în dosar
Iată numele Silas .Strong
 este inclusă în dosar
Iată numele Arturo Zi.Zimmerman
 este inclusă în dosar

Cum fac ca următoarea ieșire să fie returnată în schimb:

Aici este numele Prenume. Prenume
Prenume.Numele este inclus în fișier
Iată numele Silas .Strong
Silas .Strong este inclus in fisier
Iată numele Arturo Zi.Zimmerman
Arturo Zi.Zimmerman este inclus în dosar

Mulțumiri

drapel hr
Este posibil ca fișierul dvs. CSV să aibă sfârșituri de linie în stil DOS (CRLF).
FedKad avatar
drapel cn
Ești sigur că ai introdus corect al doilea „$name” în scriptul tău? În sistemul meu, scriptul dvs. a produs rezultatul așteptat. Cu toate acestea, puteți rula `dos2unix names.csv` înainte de a rula scriptul pentru a vedea că comentariul anterior este corect.
Emma avatar
drapel us
@steeldriver asta a fost problema.. CSV-ul meu avea formatul CRLF. Conversia acestuia în LF a remediat fișierul Mulțumiri

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.