7.
il terminale (2)qualche altro comando, questa volta da usare con un po' più di attenzione.
7a.
rmrm è un comando che serve a cancellare (rimuovere, da qui il nome) uno o più file.
insomma, dando
il file denominato file1 verrà
definitivamente cancellato dal vostro sistema (e non spostato nel cestino!).
chiaramente nella forma
l'operazione sarà svolta su entrambi i file in argomento.
se il file da cancellare non sta nella directory corrente dovrete ovviamente dare il comando
CODICE
$ rm /percorso/di/file1
altra cosa interessante: avrete notato che molti comandi hanno delle opzioni, e che queste opzioni iniziano con un trattino seguito da una lettera maiuscola o minuscola. bene, ma se qualche mente perversa ha creato un file con il nome che inizia con un trattino? come far capire al sistema che quello è l'argomento del comando e non una serie di opzioni? più semplice di quello che sembra, basta dare
non che capiti tuttii giorni di trovare file con nomi fatti così, ma casomai dovesse capitare sapete come eliminarli (o comunque lavorarci da terminale).
e parlando di opzioni, anche rm ne ha. le principali sono:
rm -d, che fà sì che rm lavori sulle directory invece che sui file
rm -f, che forza l'eliminazione
rm -i, che chiede conferma prima di procedere all'eliminazione
rm -r o rm -R, che cancella le directory e le sottodirectory in modo ricorsivo.
OCCHIO! queste opzioni sono tremendamente pericolose! il terrore di tutti i linuxiani è di scrivere nella shell in un momento di follia
cosa fa? ditemelo voi, a questo punto dovreste capirlo a colpo d'occhio... comunque non fa nulla di buono (don't try this at home!!!).
7b.
rmdirrmdir è simile a rm -d, in pratica seve a rimuovere le directory.
quindi, se avete una directory ./prova che non vi serve più per qualunque ragione, digitando
ve ne liberate.
e se rm ha l'opzione -r (oppure -R) che serve a cancellare ricorsivamente le directory e le sottodirectory, l'equivalente in rmdir è
rmdir -p
dare il comando
CODICE
$ rmdir -p prova1/prova2
equivale a scrivere
CODICE
$ rmdir prova1/prova2 prova1
.
rispetto a rm -d oppure rm -r (o -R) ha il vantaggio di poter rimuovere solo directory vuote, quindi è meno rischioso del suo "collega".
7c.
chmodchmod è un comando importantissimo per lavorare in linux da shell.
in windows, se l'utente pippo crea un file, l'utente topolino può leggerlo senza problemi. in linux non è detto che sia così. ogni file possiede una serie di permessi che dicono chi lo può leggere, scrivere o eseguire. nell'interfaccia grafica i permessi si trovano tra le proprietà del file, e sono rappresentati da nove caselle che possono essere spuntate a seconda di come si vuole impostare l'accesso al file. le nove caselle sono disposte su tre righe (proprietario, gruppo e altri) e tre colonne (lettura, scrittura ed esecuzione). in genere il proprietario del file (poniamo pippo) ha tutti i permessi (lettura-scrittura-esecuzione), o almeno quelli di lettura e scrittura (se il file non è un eseguibile non ha senso avere i permessi di esecuzione. per quanto riguarda i membri del gruppo (ogni utente ha un gruppo col proprio nome di cui è di default "membro unico"; comunque, ai gruppi si possono aggiungere anche altri utenti ed è possibile creare nuovi gruppi) e gli altri si può decidere di limitare in qualche modo l'utilizzo del file (magari vietando scrittura e/o esecuzione o precludendo del tutto l'accesso).
in forma testuale ci sono due modi per impostare i permessi.
il primo sistema è "alfabetico". sempre nella linguetta "permessi" delle proprietà del file dovrebbe esserci un'indicazione "simbolici", del tipo -rwxrwxrwx. il trattino all'inizio indica che ciò su cui stiamo lavorando è un file normale (le directory al posto del trattino hanno una d). il primo gruppo di lettere indica i permessi del proprietario, il secondo quelli del gruppo, il terzo quelli degli altri. le lettere hanno i seguenti significati:
r indica permesso di lettura
w indica permesso di scrittura
x indica permesso di esecuzione
se ho un file con permessi -rwx------ posso dare il comando
per dare al gruppo permesso di lettura oppure
per dare agli altri i permessi di lettura e scrittura (i permessi non sono "cumulativi", quindi il permesso di scrittura non include automaticamente quello di lettura; se si dà solo permesso di scrittura senza dare quello di lettura sarà come non aver dato nulla)
se invece ho un file con permessi -rwxr-xr-x e voglio poterlo eseguire solo io, dovrò dare
i membri del gruppo e gli altri potranno leggere il file, ma solo il proprietario potrà scriverlo o eseguirlo.
il secondo sistema invece è numerico. i valori base sono:
0 = nessun permesso
1 = permesso di esecuzione
2 = permesso di scrittura
4 = permesso di lettura
sommando questi valori si può avere il corrispettivo numerico dei permessi di un file. quindi il file del primo esempio "alfabetico" (quello che aveva permessi -rwx------) avrebbe permessi 700, mentre quello del secondo esempio (-rwxr-xr-x) sarebbe 755.
il comando corrispondente a
sarebbe
, quello corrispondente a
sarebbe
.