Strona 1 z 1

Korzystajmy z możliwości jakie daje grep

: 26 stycznia 2008, 21:30
autor: fnmirk
Wklejając na forum zawartość naszego problemowego pliku, oprócz informacji ważnych, podajemy mnóstwo śmieci. ¦mieciami są najczęściej wszystkie linie na początku, których znajduje się znak ,,#''. Wykorzystując możliwości poczciwego polecenia grep, możemy bardzo łatwo odfiltrować informacje ważne od mniej ważnych. Najczęściej wklejana na forum jest zawartość /etc/X11/xorg.conf. Przedstawię teraz, to na co pragnę zwrócić uwagę.
Najczęściej postępujemy tak:
cat /etc/X11/xorg.conf
a powinniśmy tak

Kod: Zaznacz cały

cat /etc/X11/xorg.conf | grep -v '#'
a jeszcze lepiej tak:

Kod: Zaznacz cały

cat /etc/X11/xorg.conf | grep -v '#' >/home/nazwa_usera/xorg.txt
cała informacja w ostatnim przypadku zapisywana jest w pliku tekstowym, w katalogu domowym użytkownika, z którego to pliku łatwo można wkleić informację na forum (np.: mając uszkodzony tryb graficzny systemu).
Podobnie możemy postąpić w przypadku innych plików:

dla pliku /etc/apt/sources.list

Kod: Zaznacz cały

cat /etc/apt/sources.list | grep -v '#'
lub

Kod: Zaznacz cały

cat /etc/apt/sources.list | grep -v '#'>/home/nazwa_usera/lista.txt
dla pliku /etc/fstab

Kod: Zaznacz cały

cat /etc/fstab | grep -v '#'
lub

Kod: Zaznacz cały

cat /etc/fstab | grep -v '#'>/home/nazwa_usera/fstab.txt
Mam nadzieję, że inni użytkownicy forum postarają się to jeszcze uzupełnić i z pożytkiem dla wszystkich stosować.

: 26 stycznia 2008, 21:42
autor: soki
Dobry patent, który z pewnością skróci listingi załączane na forum :mrgreen: Swoją drogą przydałaby się spacja w tytule postu :-P

: 26 stycznia 2008, 22:04
autor: rupek

Kod: Zaznacz cały

grep -v '#' /etc/X11/xorg.conf
Tak tez sie da( mniej pisania) :mrgreen:

: 26 stycznia 2008, 22:04
autor: fnmirk
Dziękuję --- soki

: 06 lutego 2008, 13:04
autor: beel
fnmirk pisze:a powinniśmy tak
Kod:
cat /etc/X11/xorg.conf | grep -v '#'
Równoznaczne..

Kod: Zaznacz cały

sed '/^#/d' /etc/X11/xorg.conf

pzdr

: 28 kwietnia 2008, 11:15
autor: Sycu
Witam, to mój pierwszy post na tym forum więc proszę o wyrozumiałość :)

Lepszym wyjściem jest sposób beel, albo taki:

Kod: Zaznacz cały

cat plik | grep -v '^#'
a to dlatego, że nie wypisuje tylko tych linii, w których znak '#' występuje jako pierwszy. Sposoby z poprzednich porad ominęły by np taką linijkę:

Kod: Zaznacz cały

rm -f plik # usuwamy plik
Takie komentarze występują w zasadzie rzadko, ale nie możemy ich dyskryminować :)
Pozdrawiam