Canali
![]() Ultime news
![]() Ultimi articoli
![]() Le ultime dal Forum |
![]() Correlati
![]() TagPassa qui con il mouse e visualizza le istruzioni per utilizzare i tag! Parliamo un po' di Filecp (Copy)Copiare un file è compito del comando cp, il quale si attende un file di partenza e un file di destinazione (che ovviamente non possono avere lo stesso nome, se nella stessa cartella). Ad esempio: []$ cp Auguri Xerex/Copia_Auguri Copia il File Auguri nella directory Xerex, assegnandgli il nome Copia_Auguri, a condizione che la cartella Xerex esista. In caso Copia_Auguri sia un File già presente nella cartella, verrà chiesta conferma dell'operazione. Con il Parametro -f, invece, il file verrà rimosso senza nulla chiedere (questa forzatura è utile se si vuole cancellare un alto numero di File). Esempio: []$ cp -f file1 file2 []$ cp /home/pino/file.odt ./docs []$ cp /etc/*.* /backup mv (Move)Il comando mv ha due funzioni:
Ovviamente, le due funzioni di mv si possono combinare, senza far coincidere il nome di partenza con quello di arrivo. rm (Remove)Per cancellare un file, invece, si usa il comando []$ rm [nome_file]. Prima di rimuovere il file, verrà chiesta una conferma. Se preferite che il file venga rimosso senza nulla chiedere, usate nuovamente il parametro -f. Questa forzatura è utile se si vuole cancellare un alto numero di File. Il comando rm si può usare anche per rimuovere delle cartelle anche non vuote. Prima di rimuoverle verrà chiesta una conferma. []$ rm Text Se invece si desidera eliminare tutto il contenuto di una cartella (delete all), basta utilizzare il simbolo * (vedi sotto): []$ rm * rmdir (Remove Directory)Elimina una directory vuota. Se la directory non è vuota, bisognerà prima eliminarne tutti i file contenuti, oppure forzare il comando con i parametri -r e -f. Ad esempio: []$ rmdir Old []$ rmdir -rf Trashed diff (Difference)Mostra le differenze fra due file. Ad esempio: []$ diff fileA fileB WildcardLe Wildcard sono dei caratteri Jolly che si sostituiscono ad altri caratteri normali all'interno dei comandi; un esempio chiarirà tutto:
Le Wildcard si possono combinare: []$ ls *a?.jpg stamperà l'elenco dei file con estensione .jpg e con un nome che ha come penultima lettera la "a". Nota: le Wildcard * e ? sostituiscono qualunque stringa o carattere ad esclusione del punto. Un altro carattere speciale è la pipe (|): le pipe servono per dirigere l'output di un programma o di un comando nell'input di un altro programma o di un altro comando. Per un approfondimento, si veda "Bash: pipe e redirezioni". Nota: Il comando wc è un contatore di righe, bytes, ecc., a seconda dei parametri. Ad esempio, la seguente riga stampa il numero di file presenti nella cartella: []$ ls -1 | wc -l I PermessiOgni file, nella sua descrizione, ha 9 bit che indicano all'utente le operazioni che le diverse classi di utenti del sistema possono compiere sul file. Ci sono tre "classi di utente":
[Come detto sopra, applicando l'opzione -l al comando ls si possono leggere i permessi di ogni file e directory presente nella cartella corrente] Ad esempio, la riga -rw-r--r-- 1 xerex xerex 25077 feb 2 00:00 imm.jpg indica che imm.jpg è un file con permessi in lettura e scrittura per il proprietario, nonché permessi di lettura per gruppo ed altri utenti (vedi spiegazione dettagliata sotto). Per cambiare i permessi si usa il comando chmod. Questo comando necessita di parametri che specifichino quali permessi modificare e per chi. Ad esempio: []$ chmod +x [nome_file] Aggiunge il permesso di esecuzione a tutti gli utenti del sistema. Un altro modo di settare i permessi è "passando" a chmod un valore in notazione "ottale" che indica i permessi. Questa tabella esemplificherà il prossimo esempio. []$ chmod 755 Text Assegna al proprietario del file tutti i permessi, mentre al gruppo ed agli altri utenti permette solo la lettura e l'esecuzione del file. ProgrammazioneLa Shell può essere interpretata anche come un vero e proprio ambiente di sviluppo: "l'arte" Shell Programming permette di scrivere script che possono risolvere problemi di amministrazione di sistema. Prendete, ad esempio, una rete con decine di computer e centinaia di utenti. L'amministratore del sistema, che ha permessi da superutente, può decidere di ricercare utenti che non accedano al sistema da uno specificato periodo di tempo e spedire una mail a questi, per domandare se l'account è ancora necessario e, in caso contrario, cancellarlo. Pensate alla mole di lavoro che l'amministratore dovrebbe sobbarcarsi per controllare ogni utente su ogni macchina: non credo basterebbe una settimana. Grazie allo Shell Scripting, invece, è sufficiente scrivere un programma combinando vari comandi della shell simili a quelli appena visti, che eseguano il compito sopra descritto. Come è facile intuire, i pochi comandi descritti in questo articolo non sono sufficienti per scrivere un programma così complesso, ma con un po' di pratica e molta volontà sarà possibile scrivere programmi utili anche dopo poche ore di esercizio. Ah, dimenticavo... per tornare all'interfaccia grafica premete Alt+F7! ![]() Primo incontro con la Shell Testuale Segnala ad un amico |
© Copyright 2025 BlazeMedia srl - P. IVA 14742231005