Gdzie opanować najbardziej przydatne polecenia linux dla programistów? [Zamknięte]

14

Moc łączenia xargs, cut, tail, grep, seqmnie zadziwia. W jakim zasobie powinienem obejrzeć samouczek na temat najbardziej przydatnych poleceń linuksowych dla programistów?

Interesują mnie tylko te, których programiści używają najczęściej, co ułatwi mi życie.

wonk wonk
źródło
Witamy w Stack Exchange. Odkryliśmy, że prośba o listę zasobów rzadko działa w naszym formacie pytań i odpowiedzi . Proszę przeczytać prawdziwe pytania i odpowiedzi . Sugeruję przeglądanie strony (szczególnie pytania w informacjach o tagach dotyczące powłoki , przetwarzania tekstu , sed itd.
Gilles „SO- przestań być zły”

Odpowiedzi:

12

Najlepszą rzeczą, jaką możesz zrobić, aby się tego nauczyć, jest znalezienie problemów i ich rozwiązanie. Przejrzyj tę stronę, spójrz na wszystkie „Jak zrobić X w awk / sed / grep / etc.” i wypróbuj je sam, zanim spojrzysz na odpowiedzi. Zobacz, czy utkniesz lub sprawdź, jak zrobili to inni, gdy znajdziesz sposób. Jeśli zauważysz, że robisz coś powtarzalnego w terminalu, przestań i zastanów się, jak możesz użyć jednego lub więcej narzędzi, aby to ułatwić. Jeśli nie możesz znaleźć sposobu, aby to zrobić, opublikuj tutaj, a my poprowadzimy Cię.

Kevin
źródło
Sidenote: seq, headi tail(przynajmniej najczęściej używane części) są dość trywialne. Sugeruję, grepaby zacząć od wygodnego przeszukiwania połowy wyrażeń regularnych i sed(równolegle, ale nieco w tyle grep), aby uzyskać zastępczą połowę (zachowaj bardziej zaawansowane sedpolecenia na później), awkponieważ jest to dość potężne narzędzie. Następnie find, po czym xargs.
Kevin
9

Unix Programming Environment przez Kernighana i Pike jest klasycznym na ten temat. Jest starożytny, ale wciąż w druku, co powinno ci coś powiedzieć.

Sztuka programowania w systemie UNIX przez esr jest znacznie nowsza. Uznałem to za interesujące i pomocne, ale z nieco większym „poparciem”, niż uważałem za konieczne. (Eufemizm dla „spieniania stronnictwa”). Przygotuj się na porównanie z innymi systemami operacyjnymi z odrobiną soli, jak przypominam sobie znajdowanie przestarzałego [1] materiału, nawet gdy książka była nowa, a konkurenci * ix mają prawie dekadę postęp od tamtego czasu.

[1] Przeważnie przypominam sobie błędy w systemach operacyjnych innych niż * ix, które zostały wyeliminowane przed opublikowaniem książki. To samo można znaleźć w amatorskich argumentach Windows vs Mac vs Linux w całej sieci.

Warren Young
źródło
5

Postępuj zgodnie z planem jednego dnia. Zacznij od wpisania wszystkiego w /sbin. Następnie weź jedno polecenie dziennie i wpisz man commandi dowiedz się, co robi. Wszystkie podstawowe polecenia podstawowe są w /sbin. Następnie przejdź do pracy, /bina po zakończeniu przejdź do pracy /usr/sbini /usr/bin. Możesz skrócić listę poleceń, pomijając dowolne z więcej niż 5 liter w nazwie polecenia, i nie przegapisz wielu ważnych rzeczy.

Ale ważne jest to, że każdego dnia uczysz się czegoś nowego i prawdopodobnie zanim będziesz w połowie, zrozumiesz tyle podstaw, że z łatwością będziesz mógł wybrać pół tuzina nowych poleceń dziennie.

Ale musisz ich używać, każdego z nich, nawet jeśli to tylko majsterkowanie i wykonywanie z nimi ćwiczeń.

Michael Dillon
źródło
2
To dobry pomysł. Naucz się poleceń jeden po drugim. Sprawdź, co robią i opanuj je.
Kamil
Nie mogę się zgodzić na rozpoczęcie /sbin, biorąc pod uwagę „dla programistów” w tytule pytania. W wielu systemach /sbini /usr/sbinsą domyślnie PATHtylko dla roota. Myślę, że możesz mieć rację, widząc je jako „podstawowe” polecenia w tym sensie, że są one kluczowymi elementami systemu operacyjnego, ale nie są to narzędzia, których używasz w programowaniu tak samo jak administracja systemem.
Warren Young,
3

Jednym ze sposobów jest rozpoczęcie czytania blogów specjalizujących się w systemach Unix / Linux ..

Ten blog thegeekstuff gdzie piszę od czasu do czasu jest jednym miejscu, na początek ... Kilka ważnych artykułów, które mogą być zainteresowany są dobre:

Tam, gdzie jest seria samouczków na temat sedi awk Mam nadzieję, że jest to przydatne dla ciebie ...

użytkownik379997
źródło
3
50 poleceń to idealna odpowiedź na to pytanie! Przejrzyj go, przestudiuj przykłady każdego polecenia, a jeśli jest to interesujące, kliknij link (zwykle podany) do dalszych przykładów. Ten link jest opiekunem!
Bill K
2

Bash sprawdziłbym tldp.org/LDP/abs/html/

Iman
źródło
2
Niesławny przewodnik „Advanced Bash Scripting” nauczy Cię pisać błędy, a nie skrypty. Chociaż intencje na piśmie były szlachetne, errata i dezinformacja są zbyt wysokie, aby je polecać. mywiki.wooledge.org/BashGuide jest znacznie lepszym przewodnikiem.
Chris Down,
Dzięki @Chris Myślałem, że intro to dobry początek.
Iman
1

Programiści mają wyjątkową okazję do opanowania Linuksa. Przy każdej okazji, zamiast pisać program do wykonania zadania, napisz skrypt powłoki, aby to zrobić.

Naprawdę mam osobiste wyzwanie, aby napisać wszystko w Bash, zanim napiszę program - będziesz zaskoczony i zaniepokojony.

Jeśli chodzi o rekomendację do książki, może się to wydawać głupie, ale Linux Pocket Guide ma honorowe miejsce na mojej półce. Jest kompaktowy i ma mnóstwo przydatnych programów Linux. Przejrzenie go jest łatwe i jest świetnym odniesieniem.

kwarrick
źródło
0
info coreutils

daje dużą listę przydatnych poleceń, pogrupowanych według kontekstu.

Możesz wziąć to jako przewodnik i nauczyć się jednego polecenia dziennie, i oczywiście jako repozytorium do przeszukiwania.

nieznany użytkownik
źródło
0

Dodałbym Linuksa Wiersz poleceń i Biblię Skryptu powłoki autorstwa Richarda Bluma . Łatwo to zrozumieć, praktyczne i pełne wielu przydatnych przykładów.

Newnix
źródło