I riassunti , gli appunti i testi contenuti nel nostro sito sono messi a disposizione gratuitamente con finalità illustrative didattiche, scientifiche, a carattere sociale, civile e culturale a tutti i possibili interessati secondo il concetto del fair use e con l' obiettivo del rispetto della direttiva europea 2001/29/CE e dell' art. 70 della legge 633/1941 sul diritto d'autore
Le informazioni di medicina e salute contenute nel sito sono di natura generale ed a scopo puramente divulgativo e per questo motivo non possono sostituire in alcun caso il consiglio di un medico (ovvero un soggetto abilitato legalmente alla professione).
1. NOZIONI FONDAMENTALI
Iniziamo innanzitutto con la nozione più importante: che cos’è un file. Questo non è altro che un insieme di dati memorizzati come, per esempio, una lettera o un programma. Ogni file ha un nome che può essere anche molto lungo e contenere tutti i caratteri ad eccezioni di quelli speciali (“\|!£$%&/()^?*+’-). I files vengono classificati in relazione al loro contenuto: per esempio i files che contengono dei testi vengono detti files di testo (solitamente il loro nome finisce in .txt), quelli che possono essere eseguiti vengono detti eseguibili, etc. Per poter avere un po’ di ordine tra i vari files vengono utilizzate le directory che costituiscono una sorta di contenitori: per esempio potrebbe risultarci utile riunire tutti i files di testo in una stessa directory che potrei chiamare testo. All’interno di ogni directory è possibile creare altre directory che vengono chiamate subdirectory o sottodirectory.
Il Linux è un sistema operativo multiutente: questo vuol dire che più persone accedono allo stesso computer. Per questo motivo è necessario un sistema di protezione atto ad evitare che persone estranee (o altri utenti o pseudo tali) possano eliminare o modificare i vostri files personali. A tale scopo, ogni volta che iniziate una sessione di lavoro, il Linux chiederà il vostro user-name (detto anche nome-utente o login) e quindi la password. Fatto questo vi troverete direttamente nella vostra home-directory (nel Linux é rappresentata dalla tilde ~) che é una directory chiamata con il vostro user-name (tutte le home-directory si trovano nella directory /home). Anche tutti i file che vi appartengono saranno contrassegnati dal vostro user-name a saranno modificabili solo da voi (a meno che non si modifichino i diritti di accesso ai file, vedi sezione MANIPOLAZIONE DEI DIRITTI DI ACCESSO). Per rendervi conto di questo basta che proviate a modificare un file di qualche altro utente: fortunatamente sarà impossibile. Se volete vedere chi é il proprietario di un file basta utilizzare il comando ls -l o il comando v che visualizzeranno sia il nome dei file contenuti nella directory corrente sia quello dell'utente a cui questi appartengono (sono indicate anche altre informazioni che verranno meglio spiegate in queste dispense).
Ogni utente Linux é membro di un gruppo a cui é stato assegnato dall'amministratore di sistema quando gli é stato dato l'account. Se volete vedere a quale gruppo appartenete digitate il comando id. I gruppi indicano il tipo di lavoro che abitualmente svolgete. Ad ogni gruppo corrispondono determinati diritti di accesso e permessi per utilizzare un insieme di file di sistema.
Durante la consultazione di questa guida vi imbatterete spesso nella parola "prompt": questo non é altro che l'ambiente in cui vi trovate all'inizio di una sessione LINUX. Il prompt solitamente é caratterizzato dal nome del server seguito dal cursore che lampeggia. Ricordiamo che il LINUX é un sistema operativo case-sensitive. Questo vuol dire che riconosce le lettere maiuscole e le minuscole: quindi, per esempio, non é la stessa cosa scrivere mail piuttosto che Mail.
Infine ricordate di chiudere la vostra sessione di lavoro quando avete finito di usare il computer utilizzando il comando exit.
Caratteri speciali
Come precedentemente detto nel Linux, come in tutti i sistemi operativi (SO), esistono dei caratteri "speciali" che vengono interpretati dal sistema in particolari modi. Il più importante tra questi é l'asterisco * chiamato anche carattere jolly. L'asterisco viene interpretato dal SO come "qualsiasi digitazione di caratteri”. Quindi, grazie a questo carattere è possibile evitare una digitazione multipla che sarebbe alquanto faticosa e lunga. Per esempio, se vogliamo visualizzare tutti i files contenuti in una directory inizianti con la lettera a basterà usare il comando ls a* (il computer intende: visualizza (comando ls) i files il cui nome ha dopo la a qualsiasi successione di caratteri (*)). Se, invece, voglio cancellare tutti i files dalla mia directory basterà utilizzare il comando rm * (il computer intende: cancella (comando rm) i files che hanno per nome qualsiasi digitazione di caratteri (*) - non vi consiglio di provarlo). Naturalmente è possibile fare delle varianti più complesse: rm *.prova, ad esempio, cancella tutti i files i cui nomi finiscono con .prova.
Anche il punto interrogativo ? é un carattere speciale: viene interpretato, infatti, come un qualsiasi carattere. Per esempio usando il comando ls prova?a potrei ottenere come risultato i file prova1a, provaba, provara, etc.
Caratteri speciali sono, infine, le parentesi quadre [ ]: queste consentono di specificare un determinato insieme di caratteri da ricercare nel nome del file. Se ad esempio vogliamo elencare i file che iniziano per "prova" e finiscono con una A,B o C (per esempio il file provaA) allora basterà usare il comando ls prova[ABC].
Uso delle pipe (si pronuncia "paip" ... )
Alcune volte potrebbe risultare utile passare i dati da un comando ad un altro cioé passare i risultati dell'esecuzione di un comando (output standard) ad un altro comando. Per fare questo é necessario usare le pipe | il cui uso é molto semplice. Se, ad esempio, vogliamo stampare su una stampante (comando lpr ) il contenuto di una directory basterà il seguente comando:
ls | lpr
cioé l'output del comando ls (ovvero il contenuto della directory) viene mandato al comando lpr che lo sfrutterà come input e quindi lo stamperà. Naturalmente é possibile usare più pipe nello stesso comando. Ad esempio
sort elenco | cat -n | lpr
ordina il file elenco (comando sort) e passa il risultato dell'ordinamento al comando cat -n che provvede a numerare ogni riga. Questo ultimo output viene passato al comando lpr al quale è demandato il compito di stamparlo.
Reindirizzamento dell'output su file
Può risultare molto utile redirigere l'output generato da un comando su un file. Questo può essere fatto utilizzando il reindirizzamento > subito dopo il comando specificando il nome del file sul quale scrivere l'output. Il computer lo creerà se il file non esiste e lo sovrascriverà se già esistente. Se ,ad esempio, voglio stampare il contenuto di una directory nel file contenuto.dir basterà utilizzare il comando:
ls > contenuto.dir
Se, invece, si vuole aggiungere in coda ad un file l'output allora bisogna utilizzare il reindirizzamento >> (chiamato append) al posto di >.
Infine vogliamo spendere due parole riguardo la notazione utilizzata in queste dispense nel descrivere i comandi. Abbiamo preso, per questione di semplicità, molti spunti dalla EBNF: quindi le funzioni tra parentesi quadrata sono opzionali mentre la sbarra verticale implica una scelta tra due o più funzioni. I comandi non scritti tra parentesi sono obbligatori e quindi ometterli vuol dire commettere un errore. In molti comandi è necessario premere contemporaneamente il tasto CTRL insieme ad altri tasti. Per indicare una combinazione di questo tipo si utilizza la seguente notazione: [CTRL]-tasto (ad esempio [CTRL]-D). Nei programmi, invece, spesso si utilizza la notazione ^tasto (ad esempio ^D).
Quando, invece, troverete scritto <return> vuol dire che dovrete premere INVIO o RETURN (dipende dal tipo di tastiera). Ricordatevi che alla fine di ogni comando è indispensabile premere questo tasto affinché il computer lo esegua.
2. MANIPOLAZIONE DEI DIRITTI DI ACCESSO
Ogni volta che visualizzate una directory in modo dettagliato (per esempio con il comando v) sulla sinistra dello schermo compare una combinazioni di lettere e tratti. Questi array rappresentano i diritti di accesso cioè i tipi di utenti che possono leggere, scrivere o eseguire un file o una directory. Cercheremo, dunque, di spiegare in quale modo è possibile comprendere i diritti di ogni file o directory.
L’array è composto da 10 elementi e lo rappresentiamo con la seguente struttura:
- --- --- ---
0 123 456 789
Nella casella 0 compare d de il nome corrispondente è una directory altrimenti, cioè nel caso di files, resta il trattino -. I restanti gruppi, composti ognuno da tre elementi, indicano tre diversi tipi di utente: User (elementi 1,2 e 3), Group (4,5 e 6) e Others (7,8 e 9). Ad ogni tipo di utente (user è l’utilizzatore, group è il gruppo a cui questi appartiene mentre others sono tutti gli altri) possono essere associati tre diversi diritti: read (lettura), write (scrittura), execute (eseguibile) oppure nessuno dei tre (in questo caso comparirà il trattino -. Quindi ammettiamo, per esempio, che prima di un file si trovi l’array:
- rwxr--r--
Questo vuol dire che il file (lo è perché nella casella 0 vi è il trattino - ) può essere letto, scritto ed eseguito dall’utilizzatore mentre gli altri gruppi (others) e il gruppo a cui appartiene l’utilizzatore (group) possono solo leggere (r) il file. Con il comando chmod è possibile assegnare ai vari utenti determinati diritti.
3. GUIDA AI COMANDI PRINCIPALI
Comando |
Descrizione e sintassi del comando |
· alias |
Crea degli alias per i comandi. E’ utile usare degli alias quando si è soliti adoperare dei comandi molto lunghi: allora è possibile assegnare a tale comando un nome (possibilmente corto e facile da ricordare) in modo da digitare quest’ultimo in luogo dell’intero comando. Esempio: |
· at |
Esegue un comando in un momento preciso da noi assegnato. Esempio: |
· bc |
Calcolatrice. |
· bg |
Riprende in background un job interrotto. Esempio: |
· cat |
Visualizza un file sullo schermo (non si ferma, però, alla fine di ogni pagina e non è possibile muoversi all’interno del file). Serve anche per riunire in un unico file più volumi (vd. comando split per la creazione dei volumi). Esempio: |
· cd |
Cambia la directory in uso. Esempio: |
· chmod |
Modifica i diritti di manipolazione di un file o directory. Esempio: |
· chown |
Cambia la proprietà di un file o directory (change owner). Questo comando può essere eseguito solo dall’utente root. Esempio: |
· clear |
Pulisce lo schermo. |
· cmp |
Confronta due files e dice le loro differenze in righe. |
· compress |
Comprime i files selezionati. Per decomprimerli utilizzare i comandi uncompress o zcat. |
· cp |
Copia un file. Esempio: |
· date |
Mostra la data e l’ora corrente. |
· df |
Mostra lo spazio disponibile sul disco. |
· dircmp |
Confronta due directory (-d per confrontare i files comuni). |
· du |
Indica lo spazio del disco occupato dai propri file (in KiloByte). |
· fg |
Riprende un job interrotto eseguendolo in primo piano. |
· file |
Dice se qualcosa è un file (se è un file noto dice anche di quale tipo di file si tratta) o una directory. |
· find |
Ricerca un file se noto il nome all’interno di una o più directory. |
· finger |
Visualizza lo stato degli utenti e dei computer sulla rete. Esempio: |
· grep |
Trova in uno o più files le righe con le stesse parole che cerca l’utente. Esempio: |
· history |
Elenca gli ultimi comandi usati. |
· id |
Dice quali sono i propri ID numerici di utente e di gruppo. |
· jobs |
Elenca i jobs in esecuzione con i rispettivi numeri di job. Esempio: |
· joe |
E’ un potente e semplice editor di testo. |
· kill |
Elimina un job. Esempio: |
· less |
Visualizza il contenuto di un file. A differenza del comando more, è possibile andare avanti e indietro nel file. |
· locate |
Trova uno o più files all’interno dell’Hard Disk contenenti nel loro nome la sequenza di caratteri impostati. Esempio: |
· lpq |
Mostra la coda di stampa (cioè tutti i processi di stampa in attesa). Esempio : |
· lpr |
Stampa i file su una stampante. Esempio : |
· lprm |
Cancella un job di stampa (per averne l’identificativo bisogna utilizzare il comando ). |
· ls |
Lista dei files contenuti in una directory. |
· man |
Manuale elettronico. Consente di conoscere informazioni dettagliate su ogni comando. NB: Per visualizzare le varie pagine usare le frecce () o lo spazio (per avanzare di pagina in pagina). Se volete cercare una o più parole all’interno delle pagine di manuale basta usare il carattere / seguito dalla stringa da cercare (premere n per continuare la ricerca). |
· mcd |
Cambia la directory corrente in un disco DOS. Esempio : |
· mcopy |
Permette di copiare uno o più files in formato DOS. Esempio: |
· mdel |
Cancella uno o più files su dischi DOS. E’ equivalente al comando del del DOS. Esempio: |
· mdir |
Visualizza il contenuto di un dischetto DOS. |
· mesg |
Permette di controllare la possibilità che altre persone interrompano la sessione inviando messaggi sul video utilizzando il comando write. |
· mkdir |
Crea una nuova directory. |
· mmd |
Crea una directory DOS su un floppy disk. Esempio : |
· more |
Visualizza le informazioni di un file una schermata alla volta. |
· mrd |
Elimina una directory da un disco DOS. Esempio: Comandi collegati: mcopy, mdel, mdir, mmd e mcd. |
· muovi |
E’ uno script disponibile sul server dell’ASCU. E’ possibile, grazie a questo, cambiare le estensioni a più files contemporaneamente (a differenza del comando mv con il quale si può rinominare un solo file alla volta).
|
· mv |
Rinomina un file o lo sposta in un’altra directory. Esempio: |
· netstat |
Indica lo stato della rete. |
· nice |
Esegue un comando con bassa priorità. |
· passwd |
Permette di cambiare la propria password di login. Sul server ASCU è presente un programma che costringe gli utenti a cambiare la propria password almeno una volta al mese. |
· pico |
E’ un editor di testo. |
· ps |
Visualizza le informazioni sui processi. Esempio: |
· pwd |
Visualizza il nome della directory corrente. |
· rm |
Rimuove uno o più files. |
· rmdir |
Elimina una directory. |
· sort |
Ordina il contenuto di una file riga per riga (prende in considerazione il primo carattere di ogni riga). |
· split |
Divide un file in più volumi (utile per copiare su dischi un file di dimensioni maggiori a 1440Kb). Esempio: |
· talk |
Permette di comunicare con un altro utente. |
· time |
Visualizza il tempo che è stato necessario per l’esecuzione di un comando. |
· tty |
Indica il nome del terminale in uso. |
· uuencode |
Codificano e decodificano un file per inviarlo tramite posta elettronica. |
· v |
E’ un alias di sistema e corrisponde al comando ls -v. Visualizza il contenuto di una directory dando informazioni molto dettagliate su ogni file ivi contenuto e sui suoi diritti di accesso. Un esempio di schermata che si ottiene utilizzando il comando v è il seguente: |
· vacation |
Risponde automaticamente a tutti i messaggi in arrivo con un testo da voi immesso. Molto utile quando si va in vacanza. Questo comando, pero’, non è standard: chiedete al vostro amministratore di rete se il vostro sistema ne è provvisto. |
· vi |
E’ un editor di testo un po’ complicato da utilizzare ma il più diffuso nel mondo UNIX (soprattuto nei computer un po’ anziani). |
· wc |
Conta il numero di linee, caratteri e parole contenuti in un file |
· whereis |
Indica l’ubicazione di un file. |
· who |
Visualizza gli altri utenti. |
· write |
Manda un messaggio ad un utente. |
Spero che queste dispense vi siano d’aiuto e sarò contento di ricevere dei suggerimenti o delle segnalazioni riguardanti i comandi e possibili errori (errare humanum est). Rimango a vostra disposizione per qualsiasi chiarimento.
Pier Angelo FAVAROLO
Fonte: http://staff.icar.cnr.it/folino/lso/upload/dispense/principali_comandi_linux_0.doc
Sito web da visitare: http://staff.icar.cnr.it
Autore del testo: sopra indicato nel documento di origine
Il testo è di proprietà dei rispettivi autori che ringraziamo per l'opportunità che ci danno di far conoscere gratuitamente i loro testi per finalità illustrative e didattiche. Se siete gli autori del testo e siete interessati a richiedere la rimozione del testo o l'inserimento di altre informazioni inviateci un e-mail dopo le opportune verifiche soddisferemo la vostra richiesta nel più breve tempo possibile.
I riassunti , gli appunti i testi contenuti nel nostro sito sono messi a disposizione gratuitamente con finalità illustrative didattiche, scientifiche, a carattere sociale, civile e culturale a tutti i possibili interessati secondo il concetto del fair use e con l' obiettivo del rispetto della direttiva europea 2001/29/CE e dell' art. 70 della legge 633/1941 sul diritto d'autore
Le informazioni di medicina e salute contenute nel sito sono di natura generale ed a scopo puramente divulgativo e per questo motivo non possono sostituire in alcun caso il consiglio di un medico (ovvero un soggetto abilitato legalmente alla professione).
"Ciò che sappiamo è una goccia, ciò che ignoriamo un oceano!" Isaac Newton. Essendo impossibile tenere a mente l'enorme quantità di informazioni, l'importante è sapere dove ritrovare l'informazione quando questa serve. U. Eco
www.riassuntini.com dove ritrovare l'informazione quando questa serve