Szybki start - prosty sposób
Krótko mówiąc, to jest to, co muszą Państwo wiedzieć, aby rozpocząć:
- Wszystkie polecenia zaczynają się od znaku plus (+), znaku minus (-) lub znaku procentu (%).
- We wszystkich poleceniach prefiks "+" (plus) oznacza odczyt lub przetwarzanie tabeli wejściowej, a prefiks "-" (minus) zmodyfikuje tabelę wyjściową. Prefiks "%" (procent) ma inne zastosowanie.
- Najczęściej polecenie zawiera nazwę kolumny lub listę nazw kolumn i/lub znak "=" (znak równości), po którym następuje wyrażenie lub lista wyrażeń.
- Ponadto pierwszy parametr, który nie wygląda jak polecenie, oznacza plik wejściowy, a ostatni oznacza plik wyjściowy. (Można to zastąpić, deklarując plik wejściowy i plik wyjściowy jawnie za pomocą "+in= filepath" i/lub "-out= filepath").
- Dostęp do pól danych CSV można uzyskać za pomocą nazw kolumn w nawiasach kwadratowych, w następujący sposób: [Moje pole], z ich indeksem jak [3] lub w "stylu Excela" jak [A]. Ogólnie rzecz biorąc, zawartość pól w pierwszym wierszu danych jest interpretowana jako nazwy kolumn.
- Nazwy kolumn mogą zawierać spacje, więc podczas uzyskiwania do nich dostępu w wierszu poleceń lepiej umieścić je w podwójnych cudzysłowach, aby zapobiec rozerwaniu parametru wiersza poleceń.
CSV Transformacja tabeli w interfejsie CLI
Zmiana formatu tabeli CSV
Poniższe polecenie zmienia ogranicznik pola CSV na inny znak, z przecinka (,) na średnik (;).
Jest to nieprzetworzona zawartość tabeli CSV "people_comma.csv":
Teraz wpiszemy to polecenie:
A to będzie wynikowa tabela CSV "people_semicolon.csv":
Proszę również zauważyć, że zgodnie ze standardem CSV wszystkie pola zawierające rzeczywisty znak ogranicznika zostaną automatycznie otoczone znakami podwójnego cudzysłowu.
Zmiana kolejności pól danych CSV
Dostęp do pól danych CSV można uzyskać, podając nazwy pól w nawiasach kwadratowych, np: [Moje pole] lub z ich indeksem, jak [3].
Name | Age | Eye Color | Hair color |
---|---|---|---|
Anna | 27 | brown | black |
Harald | 59 | grey | blonde; now grey |
Peter | 38 | Left: brown, right: blue | red |
Wyliczenie kolumn wyjściowych za pomocą polecenia "-columns" spowoduje zmianę kolejności kolumn zgodnie z definicją. Kolumny nie wymienione w tym poleceniu zostaną pominięte.
Tak więc uporządkowanie zostanie wykonane w następujący sposób:
Name | Eye Color | Age |
---|---|---|
Anna | brown | 27 |
Harald | grey | 59 |
Peter | Left: brown, right: blue | 38 |
Przeliczanie pola danych CSV
To jest tabela "Articles.csv", zbiór niektórych ubrań na sprzedaż.
ArtNo | Article Name | Price | Size |
---|---|---|---|
348593485 | Long Sleeve Business Shirt | 65.00 | XX |
585048534 | Trousers | 70.00 | XL |
459845414 | Business Jacket | 85.00 | XL |
524525257 | Fine Leather Shoes | 235.00 | EU46 |
Teraz sklep podniesie wszystkie ceny o 20%.
Nowe ceny zostaną wstawione z dokładnością do 2 miejsc po przecinku:
ArtNo | Article Name | Price | Size |
---|---|---|---|
348593485 | Long Sleeve Business Shirt | 78.00 | XXL |
585048534 | Trousers | 84.00 | XL |
459845414 | Business Jacket | 102.00 | XL |
524525257 | Fine Leather Shoes | 282.00 | EU46 |
Korzystanie z pliku "job"
(brakujący przykład)
Działa to linia po linii. Najpierw odczytywany jest wiersz nagłówka (jeśli istnieje) i wykrywane są wszystkie nazwy pól.
Następnie wiersze tabeli są odczytywane jeden po drugim, a każdy wiersz jest przetwarzany polecenie po poleceniu.
Dostęp do pól można uzyskać za pomocą ich nazw w nawiasach kwadratowych, takich jak ten:
Dodatkowe pola z innych tabel mogą zostać połączone, a cała tabela może zostać podzielona (sformatowana) na nowo ułożone wiersze pochodne.
Na koniec tabela zostanie zapisana pod nową nazwą.
CSVfox Jest również odpowiedni do automatyzacji, takiej jak użycie w plikach wsadowych lub skryptach PowerShell, więc powinien być uruchamiany zgodnie z harmonogramem przez system operacyjny, taki jak Cron lub Harmonogram zadań.
Bardziej złożone polecenia lub konfiguracje mogą być łączone jako plik " job ", do zastosowania i ponownego użycia w różnych sytuacjach.
Więcej przykładów
- csvfox infile.csv +e=utf-8 +d=";" -e=Windows-1252 -d=pipe outfile.csv
- To polecenie zmienia format pliku CSV.
Odczytujeinfile.csv
, przyjmując kodowanie UTF-8 i średnik jako separator. Następnie zapisuje dane dooutfile.csv
, zmieniając separatory na "|" i kodowanie na ANSI (Windows).
Proszę zobaczyć także ±encoding i ±delimiter. - csvfox prices.csv +e=windows-1252 -set[Price]="{([Price]+20%),2}" -e=utf-8 newprices.csv
- Powoduje to ponowne obliczenie pola numerycznego.
Odczytuje sformatowany w systemie Windows plik CSV "prices.csv", zwiększa istniejącą kolumnę CSVPrice o 20 procent i formatuje wynik z przecinkiem dziesiętnym i dwoma miejscami po przecinku. Następnie zapisuje wszystkie dane do pliku "newprices.csv" przy użyciu UTF-8.
Proszę również zobaczyć Calculating with Numeric CSV Fields. - csvfox newprices.csv -add["Special Offer Text"]="Just for you: [Price]!" specialoffers.csv
- To polecenie dołącza nową kolumnę i wypełnia ją tekstem.
Dołącza nową kolumnęSpecial Offer Text do tabeli CSV i wstawia tam tekst zawierający zawartośćPrice .
Proszę zobaczyć także Expressions and their Resolving. - csvfox cities.csv %merge[Name]=[Location]@attractions.csv cityattractions.csv
- Ten przykład łączy dwa pliki.
Wzbogaca dane w pliku " cities . csv " o wszystkie pola atrakcji wymienione w pliku "attractions.csv", gdzie kolumnaLocations w pliku "attractions.csv " odpowiada poluName w pliku "cities.csv". Wynikowe dane zostaną zapisane w pliku "cityattractions.csv".
Proszę również zobaczyć %merge.