Nowe posty

xx Problem ze sterownikami. (5)
2024-04-13, 21:25:16
xx Instalacja xfce4 (2)
2024-04-13, 16:20:17
xx Serie kompilacji bez instalacji dla “emerge” w Gentoo (2)
2024-04-08, 18:40:04
xx Plasma 6 w Neonie ssie trochę mniej ... (17)
2024-04-05, 10:03:46
xx Problem z Linux Lite po instalacji (3)
2024-04-03, 14:23:40
xx Jak właczyć num locka przy starcie systemu debian 12? (12)
2024-04-02, 17:43:54
xx Brak dźwieku w systemie. (5)
2024-04-02, 16:13:41
xx Dystrybucja pod HP Omen (7)
2024-03-29, 11:33:05
xx [Poradnik] Wyszukiwanie Sterowników (2)
2024-03-27, 21:08:23
xx Ile pingwinów? (1)
2024-03-27, 08:59:24

Autor Wątek: Polecenia a potok.  (Przeczytany 5014 razy)

Hipek

  • Gość
Polecenia a potok.
« dnia: 2007-11-29, 13:55:32 »
Witajcie!

Mam mały problem natury raczej teoretycznej:
chcialem wyswietlić informacje o sobie poleceniem:
whoami | finger
whoami zwraca mój login, za to finger moj_login zwraca szczegolowe informacje o mnie. Chcialem wiec to polaczyc w jedno: wyjście z whoami czyli moj login przekierować do finger ale zamiast otrzymać spodziewany wynik, system wypisuje mi szczegolowe info o wszystkich obecnie zalogowanych uzytkownikach.
Gdzie tu jest błąd?

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Polecenia a potok.
« Odpowiedź #1 dnia: 2007-11-29, 14:09:40 »
finger `whoami`
Pipe "|" powoduje przekazanie wyjścia jednego programu na wejście drugiego, a nie do jego parametrów. Znaki `` powodują wykonanie polecenia między nimi i podstawienia wyniku w to miejsce.

Hipek

  • Gość
Polecenia a potok.
« Odpowiedź #2 dnia: 2007-11-29, 14:17:56 »
aha. Czyli jeśli piszę
polecenie1 | polecenie2
oznacza to, że polecenie2 potrzebuje do swojego wykonania otrzymać jakieś dane, na których będzie pracować: wykona się tylko na tekście, który wyrzuci polecenie1, tak?
Czyli mogę założyć, że
polecenie1 `polecenie2` 
jest równoważne C++-owej składni
polecenie1 ( polecenie2() )
?
Dzięki!

  • Gość
Polecenia a potok.
« Odpowiedź #3 dnia: 2007-11-29, 18:23:50 »
Cytat: Hipek
oznacza to, że polecenie2 potrzebuje do swojego wykonania otrzymać jakieś dane, na których będzie pracować: wykona się tylko na tekście, który wyrzuci polecenie1, tak?
Oznacza to, że polecenie2 potrzebuje do swojego wykonania otrzymać jakieś dane, na których będzie operować: wykona się jeśli wpiszesz je z klawiatury albo jeśli przekierujesz je z polecenia1 (używając składni polecenie1 | polecenie2)

xis

  • Gość
Polecenia a potok.
« Odpowiedź #4 dnia: 2007-11-29, 18:59:02 »
Warto dodać, że wiele komend ma w swojej liście dostępnych parametrów parametr (najczęściej) '-' (po prostu minus). Wykonenie komendy z tym parametrem sprawia, że nasze polecenie będzie zaczytywać dane wejściowe właśnie ze standardowego wejścia (czyli możliwe jest wtedy wykorzystanie potoku i standardowego wyjścia innej komendy).

Hipek

  • Gość
Polecenia a potok.
« Odpowiedź #5 dnia: 2007-12-01, 12:20:19 »
No to super ;) wiem już wszystko.

Mam jeszcze takie pytanie: jaką komendą poznać który proces pobiera najwięcej pamięci? Miałem takie zadanie na kolokwium i padłem...

norbert_ramzes

  • Gość
Polecenia a potok.
« Odpowiedź #6 dnia: 2007-12-01, 21:14:19 »
Do monitorowania procesów jest ps i top.

man ps

man top

top jest łatwiejszy w użyciu.

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Polecenia a potok.
« Odpowiedź #7 dnia: 2007-12-02, 02:21:51 »
@Hipek

Tyle, że to forum nie służy do odrabiania czyjejś pracy domowej ^^

Hipek

  • Gość
Polecenia a potok.
« Odpowiedź #8 dnia: 2007-12-02, 23:45:47 »
Cytat: ultr
@Hipek

Tyle, że to forum nie służy do odrabiania czyjejś pracy domowej ^^
ultr, bądz tak miły i nie rób ze mnie idioty, za stary jestem na zachowywanie się jak dziecko neostrady. :)

Kolokwium już było i w charakterze zdobywania stopni ta wiadomość nie jest mi potrzebna. Pytałem ze zwykłej ciekawości, bo nie lubię nierozwiązanych zadań.

norbert_ramzes: dzięki, wiedziałem że jest coś z "x" w nazwie. O top nie slyszałem :)
Pozdrawiam!