Fish Shell:
Työskentely CSV:n kanssa
Kuinka:
Fish Shellillä itsellään ei ole sisäänrakennettuja funktioita nimenomaan CSV-manipulointiin suunniteltuna. Voit kuitenkin hyödyntää Unix-työkaluja kuten awk, sed ja cut perustoimintoihin tai käyttää erikoistuneita työkaluja kuten csvkit monimutkaisempiin tehtäviin.
CSV-tiedoston lukeminen ja ensimmäisen sarakkeen tulostaminen:
Käytetään cut-komentoa ensimmäisen sarakkeen poimimiseen:
cut -d ',' -f1 data.csvNäytekirjoitus:
Nimi
Alice
BobCSV-rivien suodattaminen sarakkeen arvon perusteella:
Käyttäen awk:ia löytääkseen rivit, joissa toinen sarake vastaa “42”:
awk -F, '$2 == "42" { print $0 }' data.csvNäytekirjoitus:
Bob,42,LontooCSV-tiedoston muokkaaminen (esim. sarakkeen lisääminen):
Käyttäen awk:ia lisätäksesi sarakkeen, jossa on staattinen arvo “UusiSarake”:
awk -F, 'BEGIN {OFS=","} {print $0,"UusiSarake"}' data.csv > muokattu.csvNäyte muokattu.csv-tulostuksessa:
Nimi,Ikä,Kaupunki,UusiSarake
Alice,30,New York,UusiSarake
Bob,42,Lontoo,UusiSarakecsvkitin käyttö monimutkaisempiin toimintoihin:
Varmista ensin, että sinulla on csvkit asennettuna. Jos ei, asenna se käyttäen pip: pip install csvkit.
CSV-tiedoston muuntaminen JSON-muotoon:
csvjson data.csv > data.jsonNäyte data.json-tulostuksessa:
[{"Nimi":"Alice","Ikä":"30","Kaupunki":"New York"},{"Nimi":"Bob","Ikä":"42","Kaupunki":"Lontoo"}]Suodattaminen käyttäen csvkitin csvgrep:
csvgrep -c 2 -m 42 data.csvTämä komento toistaa suodatustehtävän mutta käyttäen csvkit:iä, kohdistuen sarakkeeseen 2 arvolla “42”.
Yhteenvetona, vaikka Fish Shell itsessään ei ehkä tarjoa suoraa CSV-manipulointikyvykkyyttä, sen saumaton integraatio Unix-työkalujen kanssa ja työkalujen kuten csvkit saatavuus tarjoavat tehokkaita vaihtoehtoja työskennellä CSV-tiedostojen kanssa.