Linux è famoso per i suoi comandi. Ciò è in parte dovuto al fatto che quasi tutto ciò che fa Linux può anche essere invocato da un terminale, ma è anche che Linux come sistema operativo è altamente modulare. I suoi strumenti sono progettati per produrre risultati abbastanza specifici e, quando si conosce molto su alcuni comandi, è possibile combinarli in modi interessanti per ottenere risultati utili. Imparare Linux è in parti uguali imparare i comandi e imparare a mettere insieme quei comandi in combinazioni interessanti.
Più risorse Linux
- Comandi Linux cheat sheet
- Cheat sheet sui comandi avanzati di Linux
- Corso online gratuito:Panoramica tecnica RHEL
- Cheat sheet della rete Linux
- Cheat sheet di SELinux
- Cheat sheet dei comandi comuni di Linux
- Cosa sono i container Linux?
- I nostri ultimi articoli su Linux
Con così tanti comandi Linux da imparare, tuttavia, fare il primo passo può sembrare scoraggiante. Quale comando dovresti imparare per primo? Quali comandi dovresti imparare bene e quali comandi richiedono solo una familiarità passeggera? Ho riflettuto molto su queste domande e non sono convinto che esista una risposta universale. I comandi "di base" sono probabilmente gli stessi per chiunque:
ls
cd
mv
Questi equivalgono a essere in grado di navigare nel tuo file system Linux.
Al di là delle basi, tuttavia, i comandi "predefiniti" variano da settore a settore. Gli amministratori di sistema hanno bisogno di strumenti per l'introspezione e il monitoraggio del sistema. Gli artisti hanno bisogno di strumenti per la conversione dei media e l'elaborazione grafica. Gli utenti domestici potrebbero volere strumenti per l'elaborazione PDF, il calendario o la conversione dei documenti. L'elenco potrebbe continuare all'infinito.
Tuttavia, alcuni comandi di Linux si distinguono per essere particolarmente importanti, o perché sono strumenti comuni di basso livello di cui tutti hanno bisogno occasionalmente o sono strumenti per tutti gli usi che chiunque potrebbe trovare utili per la maggior parte del tempo.
Eccone tre da aggiungere alla tua lista.
Sed
Scopo: Il sed
command è un buon strumento per tutti gli usi che qualsiasi utente Linux può trarre vantaggio dalla conoscenza. In superficie, è solo un "trova e sostituisci" basato su terminale. Ciò lo rende ideale per correzioni rapide e semplici su più documenti. Il sed
comando mi ha fatto risparmiare ore (o forse giorni cumulativi) di apertura di singoli file, ricerca e sostituzione di una parola, salvataggio del file e chiusura del file. Questo da solo giustifica il mio investimento nell'apprendimento del terminale Linux. Una volta che conosci sed
beh, è probabile che tu scopra un intero mondo di potenziali trucchi di editing che ti semplificano la vita.
Forza: La forza del comando è nella ripetizione. Se hai un solo file da modificare, è facile aprirlo ed eseguire un "trova e sostituisci" in un editor di testo tradizionale. Tuttavia, quando ti trovi di fronte a cinque o 50 file, un buon sed
comando (magari combinato con GNU Parallel per una maggiore velocità) può recuperare ore della tua giornata.
Debolezza: Devi bilanciare il tempo che prevedi di dedicare alla modifica con quanto tempo potrebbe essere necessario per costruire il giusto sed
comando. Modifiche semplici con il comune sed 's/foo/bar/g
la sintassi valgono quasi sempre la banale quantità di tempo necessaria per digitare il comando, ma complessi sed
comandi che utilizzano uno spazio di attesa e uno qualsiasi dei ed
i sottocomandi di stile possono richiedere una seria concentrazione combinata con diversi round di tentativi ed errori. A quanto pare, può essere meglio apportare alcune modifiche alla nuova maniera.
Trucco: Scarica il nostro cheat sheet sed per un rapido riferimento ai suoi sottocomandi a lettera singola e una panoramica della sua sintassi.
Grep
Scopo: Il grep
comando deriva dalla sua descrizione, dichiaratamente goffa:stampa di espressioni regolari globali. In altre parole, grep
stampa sul terminale qualsiasi modello di corrispondenza che trova nei file (o in altre forme di input). Ciò lo rende un ottimo strumento di ricerca, particolarmente abile nello scorrere grandi quantità di testo.
Potresti usarlo per trovare gli URL:
$ grep --only-matching \
http\:\/\/.* example.txt
Potresti usarlo per trovare un'opzione di configurazione specifica:
$ grep --line-number \
foo= example.ini
2:foo=true
E, naturalmente, puoi combinarlo con altri comandi:
$ grep foo= example.ini | cut -d= -f2
true
Forza: Il grep
command è un semplice comando di ricerca. Se hai letto i pochi esempi sopra, hai essenzialmente imparato il comando. Per una flessibilità ancora maggiore, puoi utilizzare la sua sintassi estesa delle espressioni regolari.
Debolezza: Il problema con grep
è anche uno dei suoi punti di forza:è solo una funzione di ricerca. Una volta trovato quello che stai cercando, potresti trovarti di fronte alla domanda più ampia su cosa farne. A volte la risposta è facile come reindirizzare l'output a un file, che diventa il tuo elenco di risultati filtrato. Tuttavia, casi d'uso più complessi implicano un'ulteriore elaborazione con un numero qualsiasi di comandi come awk, curl (per inciso, abbiamo anche un cheat sheet per curl) o una qualsiasi delle migliaia di altre opzioni che hai su un computer moderno.
Trucco: Scarica il nostro cheat sheet di grep per un rapido riferimento alle sue numerose opzioni e alla sintassi regex.
Separato
Scopo: GNU parted
non è un comando di uso quotidiano per la maggior parte delle persone, ma è uno degli strumenti più potenti per la manipolazione del disco rigido. La cosa frustrante dei dischi rigidi è che passi anni a ignorarli finché non ne ottieni uno nuovo e devi configurarlo per il tuo computer. È solo allora che ti ricordi che non hai idea di come formattare al meglio il tuo disco. Questo è quando la familiarità con parted
può essere utile. GNU parted
può creare etichette del disco e creare, eseguire il backup e ripristinare le partizioni. Inoltre, può fornirti molte informazioni su un'unità e il suo layout e, in generale, preparare un'unità per un filesystem.
Forza: Il motivo per cui amo parted
su fdisk
e strumenti simili è per la sua combinazione di una modalità interattiva semplice e la sua opzione completamente non interattiva. Indipendentemente da come scegli di utilizzare parted
, i suoi comandi seguono una sintassi coerente e i suoi menu di aiuto sono ben scritti e informativi. Meglio ancora, il comando stesso è intelligente . Quando si partiziona un'unità, è possibile specificare le dimensioni in qualsiasi cosa, dai settori alle percentuali e parted
fa del suo meglio per capire i punti più fini del posizionamento della tabella delle partizioni.
Debolezza: Mi ci è voluto molto tempo per imparare GNU parted
dopo essere passato a Linux perché, per molto tempo, non ho avuto una buona comprensione di come funzionano effettivamente le unità. GNU parted
e la maggior parte delle utilità di unità basate su terminale presuppongono che tu sappia cos'è una partizione, che le unità abbiano settori e necessitino di etichette del disco e tabelle delle partizioni che inizialmente mancano di filesystem e così via. C'è una curva di apprendimento ripida, non tanto per il comando quanto per le basi della tecnologia dei dischi rigidi e GNU parted
non fa molto per colmare il potenziale divario. Probabilmente non è compito del comando guidarti attraverso il processo perché ci sono applicazioni grafiche per questo, ma un'opzione incentrata sul flusso di lavoro per GNU parted
potrebbe essere un'aggiunta interessante all'utilità.
Trucco: Scarica il nostro cheat sheet diviso per un rapido riferimento ai suoi numerosi sottocomandi e opzioni.
Ulteriori informazioni
Questi sono alcuni dei miei comandi preferiti, ma l'elenco è naturalmente influenzato da come utilizzo il mio computer. Faccio molti script di shell, quindi faccio un uso massiccio di grep
per trovare le opzioni di configurazione, utilizzo sed
per la modifica del testo e utilizzo parted
perché quando lavoro su progetti multimediali, di solito sono coinvolti molti dischi rigidi. O hai già, o svilupperai presto, i tuoi flussi di lavoro con i tuoi preferiti (o almeno frequenti ) comandi.
Quando sto integrando nuovi processi nel mio lavoro quotidiano, creo o scarico un cheat sheet (come quelli collegati sopra), e poi mi alleno. Tuttavia, impariamo tutti a modo nostro, quindi trova ciò che funziona meglio per te e impara un nuovo comando essenziale. Più impari sui comandi più frequenti, più puoi farli lavorare di più per te.