Zwykle działam na komputerach z systemem Windows, ale czasami przełączam się na programowanie w systemie Linux. Mój najnowszy projekt zostanie w całości napisany na niektórych platformach linix (nie w standardowej konfiguracji Apache / MySQL / PHP). Pomyślałem więc, że opłaca się nauczyć pisać skrypt automatyzacji Linuxa.
Mogę obchodzić system, uruchamiać / zatrzymywać usługi, kompilować / instalować rzeczy w porządku. Są to prawdopodobnie podstawowe ćwiczenia dla programisty. Ale jeśli na przykład chciałbym wdrożyć określoną aplikację automatycznie na nowo wybitej maszynie linux co miesiąc, chciałbym wiedzieć, jak to zrobić.
Więc jeśli chciałbym nauczyć się poważnego pisania skryptów w Linuksie, jaką książkę powinienem czytać?
ash
, a bardzo mała dystrybucja ma również tendencję do używania rozebranych pocisków, takich jak busyboxsh
.Nauka powłoki Bash wraz z klasycznym skryptowaniem powłoki , a następnie Bash Cookbook .
Sugerowałbym, aby przejrzeć dwie pierwsze książki, nie martwiąc się zbytnio o to, żeby o tym pamiętać. Odnoś się do nich, gdy chcesz zrobić coś, o czym pamiętasz, ale o tym nie pamiętasz, jak to zrobić. I wróć do nich kilka miesięcy później i ucz się od nich nowych rzeczy.
Zauważ, że pochodzi to z perspektywy administratora Linuksa, więc pochylam się w kierunku subtelności bashu nad czystszym sh. Jest to tylko rzadki skrypt, który sprawia, że faktycznie dostosowuję sh. Ponadto nie uważam tcsh za prawidłowy język skryptowy.
źródło
Skrypty powłoki nie są skryptami powłoki. Różne systemy mają różne powłoki, a różnice w składni i semantyce są znaczące.
Inni wspominali o książkach Bash, dla skorupy Korn polecam O'Reilly's Learning the Korn Shell . Jeśli będziesz musiał pisać przenośne skrypty powłoki, jest też O'Reilly: Classic Shell Scripting .
Moim zdaniem: pisanie przenośnych skryptów powłoki jest koszmarem nawet dla osób, które są dość przyzwyczajone do określonej powłoki. Jeśli pochodzisz z systemu Windows, znasz podstawowe rzeczy (usługi start / stop, kompiluj / instaluj rzeczy), a twoim celem jest automatyzacja, którą osobiście trzymałbym się w Perlu.
Podczas gdy Perl ma swoje wady, chodzi o sklejanie różnych części razem, gdzie świeci. I to właśnie w moim doświadczeniu stanowi większość automatyzacji. Ponadto w systemach Unix Perl jest wszechobecny.
źródło
Kupiłem amazonowi pięć gwiazdek z oceną „ Linux Command Line and Shell Scripting Bible ” od Richarda Bluma (ISBN: 047025128X) za dostanie się do tego „poważnego skryptowania powłoki” i muszę powiedzieć, że jestem pod wrażeniem tej książki. Daje dogłębną wiedzę na temat skryptowania powłoki, ale także innych pojęć potrzebnych w tym kontekście, takich jak sposób działania uprawnień do systemu plików Linux i znane narzędzia uniksowe, takie jak grep.
źródło