Jeśli spróbujesz przekazać dane wyjściowe z jednego polecenia systemu Linux do drugiego, możesz napotkać błędy, w których polecenie nie powiedzie się, ponieważ jego lista argumentów jest zbyt długa.

Na szczęście w systemach Linux istnieje polecenie, które poprawnie formatuje argumenty w poleceniach. Nazywa się xargs i oto jak go używać.

Dlaczego warto korzystać z xargs?

Co robi xargs, to otrzymuje standardowe wyjście i formatuje je tak, aby inne polecenie mogło je odebrać. Podczas gdy wiele narzędzi Linuksa akceptuje standardowe dane wejściowe, niektóre akceptują jako dane wejściowe tylko argumenty.

Mogą się one nie powieść, jeśli spróbujesz przekierować standardowe wejście do polecenia. Niektóre polecenia nadal akceptują tylko określoną liczbę argumentów, a xargs zajmuje się tym za Ciebie.

Jak korzystać z xargs w systemie Linux

Możesz nazwać xargs w ten sposób:

xargs [polecenie]

xargs śledzi długość argumentów przyjmowanych przez polecenie i formatuje standardowe wejście, aby wyprowadzić listę argumentów, którą należy dostarczyć do polecenia. Kiedy osiągnie limit wiersza poleceń, to:

wywołaj polecenie ponownie z pozostałymi argumentami.

Używanie xargs w Pipelines

Przydatność xargs pojawia się, gdy jest używana w potokach. Wymyślnym przykładem może być piping cat to echo, które jest poleceniem, które akceptuje tylko argumenty, a nie standardowe wejście.

kot | Echo

Spowoduje to, że echo wyświetli wszystko, co wpiszesz w jednej linii, gdy tylko naciśniesz Ctrl + D.

xargs jest najczęściej używany z poleceniem find, z polecenie znajdowania używany do wyświetlania listy plików i xargs używany do przetwarzania listy plików w jakiś sposób.

Składnia polecenia find jest wystarczająco owłosiona, więc po co wprowadzać do niej inne polecenie? Jeśli używasz znajdź „-exec", uruchomi nowy proces za każdym razem, gdy przeszuka plik w katalogu. Korzystanie z xargs jest bardziej wydajne.

Możesz chcieć usunąć pliki w katalogu, które są starsze niż określona data, na przykład 90 dni. Aby to zrobić, użyjesz tego potoku:

znajdować. -mtime +90 -drukuj | xargs rm

xargs pomaga komendom systemu Linux w prawidłowym przetwarzaniu danych wejściowych

Dzięki xargs możesz teraz upewnić się, że polecenia przyjmą argumenty tak, jak tego oczekujesz. W połączeniu z funkcją find pozwoli Ci szybko przetwarzać pliki na Twoim komputerze.

Możliwość przekierowania wejścia i wyjścia w powłoce jest jedną z trwałych mocnych stron Linuksa, będącego następstwem filozofii Uniksa. Jeśli chcesz dowiedzieć się więcej o tym, jak działa przekierowanie wejścia/wyjścia w systemie Linux, czytaj dalej.

Zrozumienie standardowego we/wy w systemie Linux

Popraw przepływ pracy wiersza poleceń systemu Linux, łącząc wiele poleceń za pomocą standardowych operacji we/wy.

Czytaj dalej

UdziałĆwierkaćE-mail
Powiązane tematy
  • Linux
  • Polecenia Linuksa
  • Powłoka Bash dla Linuksa
O autorze
David Delony (81 opublikowanych artykułów)

David jest niezależnym pisarzem mieszkającym w północno-zachodnim Pacyfiku, ale pierwotnie pochodzi z Bay Area. Od dzieciństwa jest entuzjastą technologii. Zainteresowania Davida obejmują czytanie, oglądanie wysokiej jakości programów telewizyjnych i filmów, gry retro i zbieranie nagrań.

Więcej od Davida Delony

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować