ďťż
 
 
   [+] bash - rozdzielanie kolumn z pliku
 
 

Tematy

 
    
 

 

 

 

[+] bash - rozdzielanie kolumn z pliku





blackmetal_x - 30-01-2009 08:53
Witam
Mój problem dotyczy wczytywania danych z pliku.
Chcę by dane: były rozdzielone w ten sposób, że odczytuje ostatnią kolumnę czyli:
Jakiego polecenia użyć: cat, cut? Jakie parametry pozwolą mi to wyświetlić?



snah - 30-01-2009 09:53
Można użyć polecenia cut. Jeśli po przeczytaniu man cut oraz ewentualnym zapytaniu się google o przykład będziesz miał dalej problemy, to pytaj.



RaV. - 30-01-2009 09:59
Chyba trochę kolego blackmetal_x przeginasz... Masz dwa polecenia (jedno z nich jest właściwe) i nie chce Ci się wpisać w konsoli man cat cut? Każde z nich ma jedynie po kilka przełączników. Wnioskuję zatem, że albo jesteś strasznie leniwy, albo nie szanujesz czasu innych, albo jesteś idiotą, albo uważasz innych za idiotów.
Za karę proponuję byś sam znalazł odpowiedź i wpisał tu dla potomnych. Nie zajmie Ci to więcej niż 5 minut.
A jak chcesz się w pełni zrehabilitować to w odpowiedzi uwzględnij programy awk i sed :>

PS. Nie próbuję Cię obrażać, choć zdaję sobie sprawę, że ton mojej wypowiedzi na to wskazuje, tylko uświadomić, że czas innych również jest cenny i ludzie mają co robić niż tłumaczyć innym coś, co wprost jest napisane w podręczniku systemowym i to na pierwszej stronie.

PS2. Tak, wiem że podanie odpowiedzi zajęłoby mi mniej czasu niż napisanie tego elaboratu, ale ani Ty ani następni niczego by się nie nauczyli prócz faktu, że można zadać dowolne pytanie i ktoś odpowie.



blackmetal_x - 30-01-2009 10:46
Heh. Leń? Nie będę tłumaczył jaką to ja mam pracę, szefów oraz wielu innych czynników. Owszem są wyjaśnienia, lecz nic się nie nadaje do użycia. cat plik | cut -d: -f2 Proszę bardzo, ale dlaczego nie mam dostępu do pliku? Jest cała ścieżka, nazwa pliku poprawna, a tu nic. Brak dostępu do pliku przy wykonywaniu tego polecenia. Plik jest tworzony przez: date > plik więc chyba nie ma to nic wspólnego z prawami?
Nie mam was za idiotów, sam nim nie jestem, szanuję wasz czas ale czy to tak wiele dać odpowiedź? Nigdy nie miałem do czynienia z programowaniem czegokolwiek, bazodanowiec i CMSowiec jestem.



RaV. - 30-01-2009 10:48
Dobrze. I teraz widzę, że nie idziesz na łatwiznę i pokazałeś, ze coś zrobiłeś a nie czekasz na gotową odpowiedź.
Spróbuj tak: cat plik | cut -d\: -f2 Edit:
Co do "Braku dostępu do pliku:
- Co wyrzuca samo cat plik Jeśli nie jest wyrzucana zawartość pliku, podaj wynik polecenia: ls -l plik



blackmetal_x - 30-01-2009 11:15
A więc cat wyrzuca zawartość pliku, czy może być problem z tym, zże jest ,,data'' w nim?
A po wykonaniu razem z\ command not found:)



RaV. - 30-01-2009 11:21
Nie wiem, jak wygląda struktura całego pliku, ale może naprowadzi Cię na rozwiązanie wydanie polecenia:
date;date|cut -f2 -d\: Które najpierw wyświetli wynik polecenia date a później pokaże, jak będzie wyglądało po przepuszczeniu przez polecenie cut, z parametrami, jak zaproponowałem Ci je wyżej, które rozbije plik na pola rozdzielone dwukropkiem. Cut da Ci wynik taki, jak chciałeś w pierwszym poście w tym wątku. Jeśli w pliku jest coś jeszcze, to efekt będzie się nieco różnił, ale i tak każda linia, która będzie zawierała format danych, jak przedstawiłeś, da w rezultacie drugą kolumnę na konsolę. Patrz Twój pierwszy post w wątku.

EDIT:
Jeśli "\" sprawia kłopot, możesz dwukropek ująć w cudzysłów podwójny lub pojedynczy:
date;date|cut -f2 -d":"
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis