Nowe posty

xx Dystrybucja pod HP Omen (6)
Wczoraj o 23:30:08
xx [Poradnik] Wyszukiwanie Sterowników (2)
Wczoraj o 21:08:23
lamp Problem z Linux Lite po instalacji (0)
Wczoraj o 19:50:30
xx Ile pingwinów? (1)
Wczoraj o 08:59:24
xx konfiguracja pale moon (0)
2024-03-24, 21:53:42
xx Plasma 6 w Neonie ssie trochę mniej ... (10)
2024-03-23, 02:38:11
xx problem z instalacja sterowników do karty sieciowej (3)
2024-03-18, 18:10:16
xx Plik abc.001 (1)
2024-03-17, 17:48:27
xx Zlecę dopracowanie programu w MatLab (0)
2024-03-13, 15:28:40
xx Linux Mint 21.3 XFCE brak dźwieku po paru minutach (karta muzyczna zintegrowana) (5)
2024-03-12, 23:07:01

Autor Wątek: Polecenia a potok.  (Przeczytany 5007 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!