2011-01-15 12 views
7

Io normalmente codice gli script admin in Python e so di molti che li codificano in Perl. Stavo per investire un po 'di tempo nel migliorare le mie competenze sulla programmazione bash. Ma mi chiedo se le persone intorno pensano che questa sia una buona idea?Python e/o Perl VS bash

So che bash è una buona abilità da avere e il mercato molto spesso lo richiede ma ... se riesco a cavarmela con Python o Perl allora ... vale davvero la pena?

Come risposte Sto cercando casi in cui bash è in realtà migliore di Perl o Python per sviluppare script di amministrazione.

+4

perl/python e bash usano due filosofie molto diverse, bash cerca di sfruttare altri programmi nella misura più ampia possibile (digitando 'x', eseguirà il programma 'x'), qualcosa che né perl né python fa. Dico che vale la pena imparare, indipendentemente dal fatto che tu lo voglia usare o meno. – falstro

risposta

7

Tutto ciò che apprendi non può che giovarti, mai è una cattiva idea imparare qualcosa. Detto questo, se pensi di essere produttivo con Python, allora non vedo perché ti occorra bash. Python è più potente (essendo un linguaggio di programmazione completo) e IMO ha una sintassi più gradevole e più leggibile. Bash è spesso utile per lo scripting veloce e sporco.

Se si decide di imparare, qui ci sono alcune risorse per iniziare:

  1. A Bash guide for beginners
  2. The magnificent Bash FAQ
  3. Common Bash Pitfalls

Anche se alcune regole del pollice sono ogni tanto gettato in aria per quanto riguarda quando dovresti usare ciascuna, penso che lo capirai una volta che avrai compreso tutte le tue opzioni. Avere un altro strumento nel tuo arsenale è sempre un vantaggio.

+4

Vorrei aggiungere che se si usa la riga di comando occasionalmente (o più di quello) sapere che bash è un vantaggio, dato che tutto ciò che è possibile digitare in uno script è possibile anche digitare sulla riga di comando. – extraneon

+0

Il trucco più utile che conosco per bash è X = "$ {X% 00}" che rimuove '00' da 'X' =) –

+2

@KentFredric: per essere precisi, toglie la prima occorrenza '00' dal retro di la stringa X. – racic

0

Direi che se questa è solo la tua macchina e non dovresti condividere quegli script di amministrazione con altri, quindi è meglio continuare a farlo in Python (che sembra ti senti più a tuo agio su quello).

Ma se si hanno colleghi o gli script di amministratore devono essere impiegati da altre persone, quindi si consiglia di tenerlo in un modo che è più popolare e più comprensibile anche per gli altri: Bash!

Inoltre, suppongo che se conosci Bash, puoi semplicemente utilizzare dozzine di script Bash esistenti personalizzandoli o migliorandoli a qualsiasi cosa sia più adatta a te!