2009-08-05 14 views

Odpowiedz

2

Więc chcesz tylko 1. i 2. kolumny? Jeśli tak

awk '{print $1"\t"$2}' file.csv 
+0

faktycznie, data jest w jednej kolumnie. plik ma dwie kolumny łącznie, więc muszę "przefiltrować" tę drugą kolumnę. –

+0

Jeśli jest to csv, oddzielone przecinkami, prawdopodobnie chcesz 1 $ "," 2 $, ale tak. +1. –

+0

Dlaczego upadek? – piotrsz

9

oparciu o komentarz w odpowiedzi piotrsz, jest to w jaki sposób można usunąć część EDT:

awk '{gsub("Eastern Daylight Time", "");print}' file.csv 
+0

To wygląda na to. Właśnie byłem w trakcie zwracania się do DCrawmera o zastąpienie przecinków w danych. – Pinochle

6

nie wiem awk, ale wersja sed byłoby

sed "s/ Eastern Daylight Time//" file.csv 
+0

Jest to zgodne z moją ogólną zasadą wypróbowania najpierw sed, a następnie awk, a następnie pełnego kompilowanego języka. –

2

używając tylko skorupę

while read -r line 
do 
    case "$line" in 
     *Eastern*) 
      echo "${line%%Eastern*}" 
      ;; 
     *) echo "${line}" 
    esac 
done < "file" 
Powiązane problemy