Attenzione: l'articolo è stato scritto da oltre 1 anno, le informazioni in esso contenute potrebbero essere datate e non più attuali.

Primi passi con la shell (per chi usa Linux da 2 secondi o meno...)

Questo piccolo scritto è rivolto a chi non sa assolutamente nulla di Linux e sta cercando di capire come muoversi da shell in questo splendido sistema operativo. In Linux, a differenza, di altri S.O., come Windows o MacOS, l'interfaccia testuale è alla base del sistema e prima o poi ci troveremo ad utilizzarla, quantomeno per apprezzarne la velocità e la praticità in molte situazioni. Vi presento allora alcuni concetti da conoscere prima di entrare in questo mondo, nessun argomento verrà approfondito ma solo presentato nei suoi aspetti minimi. Chi vuole approfondire i singoli argomenti può trovare numerose informazioni negli appunti di informatica libera.

I permessi e root

Linux è un sistema multiutente, permette cioè l'accesso al sistema da parte di più utenti. Per permettere un corretto uso del sistema da parte di più utenti Linux prevede tra le altre cose il meccanismo dei permessi che permettono di specificare quali risorse (cartelle, periferiche, ecc...) possono essere utillizzate dai vari utenti. Questa caratteristiche è quella che causa maggiori problemi agli utenti alle prime armi che non riescono a muoversi liberamente tra le cartelle o ad utilizzare le periferiche in maniera completa.
Tra i vari utenti c'è ne uno, root, che può fare qualsiasi cosa col sistema . Esso è l'utente che dovremo usare per modificare i file di sistema. Per farlo basterà digitare su - seguito dalla password di root. Il prompt dei comandi cambierà di solito in #.

Caratteri particolari

Alcuni caratteri individuano alcune directory è meglio conoscerli prima di proseguire:

~ (tilde) indica la directory home dell'utente
. (punto) indica la directory corrente
.. (due punti consecutivi) indicano la directory superiore a quella in cui ci troviamo

Capirete meglio l'uso di questi caratteri proseguendo nella lettura.

Il tasto TAB

A differenza di quello che può sembrare non è necessario ricordarsi perfettamente i comandi e i percorsi delle directory. Infatti basta conoscere le prime lettere e potremo completare il comando o il persorso con la funzione di autocompletamento offerta dal tasto TAB.
Immaginiamo di voler avviare il programma "start" che si trova in /home/utente/applicazioni/ , nella shell basterà operare nel seguente modo:

$ /h[TAB]
$ /home/[TAB}
alfredo mario utente
$ /home/u[TAB]
$ /home/utente/

ecc...

Quindi ci basterà inserire le prime lettere e premendo TAB ci verrano presentate le diverse alternative possibili. Se è possibile una sola alternativa con la pressione del tasto TAB verrà automaticamente inserita.

Il comando HISTORY. Le freccie.

Tutti i comandi (o almeno un certo numero definito dalla variabile d'ambiente HISTSIZE) che digitiamo nella shell vengono memorizzati nel file ~/.bash_history. Per richiamare gli ultimi comandi digitati possiamo premere le freccie direzionali superiore e inferiore.
Con il comando history possiamo conoscere tutti i comandi memorizzati.

I comandi e i programmi.

Tra i comandi e i programmi c'è una sottile differenza. I comandi appartengono alla shell stessa mentre i programmi sono esterni.
Per avviare i programmi basta digitarne il percorso completo nella shell aiutandoci col tasto TAB:

$ /usr/bin/mozilla (per avviare mozilla)

Se il programma si trova in una delle directory definite nella variabile d'ambiente PATH basterà digitare solo il nome del programma.

Muoversi tra le directory.

Il comando per spostarsi tra le directory è cd (change directory). Ecco alcuni esempi:

cd /usr/local/bin (ci sposta nella cartella /usr/local/bin)
cd ~ (ci sposta nella home dell'utente)
cd .. (ci sposta nella directory superiore a quella corrente)
cd - (ci riporta alla directory precedente)

ls per listare file

Il comando ls lista il contenuto della directory corrente:

ls -a (elenca tutti i file anche quelli nascosti, quelli che iniziano con un punto)
ls -l (elenca anche altre caratteristiche del file come dimensione, permessi, ecc...)

Creare directory

Col comando mkdir possiamo agevolmente superare anche quest' ostacolo:

mkdir ./nuova_cartella

Copiare, spostare, linkare file

Per copiare i file o le cartelle si usa il comando cp:

cp ./file_da_copiare.txt ../ (copia il file "file da copiare" nella directory superiore)
cp ./file_da_copiare.txt ../che_nome_stupido.txt (copia il file "file da copiare" nella directory superiore col nome "che_nome_stupido.txt)

Per muovere (o rinominare) un file o una cartella si uva il comando mv:

mv /home/utente/prova.gif /home/utente/immagini/
mv /home/utente/prova.gif /home/utente/prova_rinominata.gif

Per linkare file o cartelle è sufficiente utilizzare il comando ln:

ln /home/utente/prova.txt /home/utente/documenti/ (crea un link ordinario del file prova.txt nella directory documenti)
ln -s /home/utente/prova.txt /home/utente/documenti/ (crea un link simbolico del file prova.txt in documenti)
Nota. Chi è agli inizi spesso trova difficoltà a cancellare, da shell, il link simbolico di una cartella. Il comando corretto è:
rm ./cartella_linkata
e non rm ./cartella_linkata/ (notate la barra finale).

Le pagine di manuale

Per approfondire l'uso dei vari comandi potete usare le pagine di manuale già presenti sul proprio sistema:

man cp
info cp

oppure lo switch --help accettato da molti programmi e comandi:

cp --help

Uso di Midnight Commander

Se non vogliamo rinunciare né alla velocità della linea di comando né alla semplicità degli strumenti grafici, possiamo trovare un giusto compromesso in midnight commander. Avviabile digitando in console mc. Ecco come si presenta:

Mc è un praticissimo file manager testuale, attraverso esso possiamo spostarci tra directory, copiare file, rinominarli ecc in maniera molto rapida.

Argomenti correlati

Il tuo voto: Nessuno Media: 5 (4 voti)

Commenti

file da win 7 a linux Samba

Salve ho un problemino

Ho creato in VB una proceduta che mi genera un file e lo posiziona automaticamente sotto una cartella su di un altro Pc con sistema Linux ma il file sotto la cartella Linux me lo crea con permessi bassi.

Devo fare in modo che il file abbia i permessi alti senza pero' farlo manualmente con il chmod 777.

Al massimo posso lanciare una shell che mi alza i permessi. In realtà ho provato a creare una shell ma se all'interno inserisco il comando SU poi seguito da un'altra riga con chmod 777 mi succede che la shell riesce solo ad eseguire la riga SU senza continuare.

Avete qualche soluzione da suggerirmi?

 

Grazie

napolicaatinwind [dot] it

istallare skype

come si fa ad istallare skype?ho un linux mandriva e non so dove mettere mani!grazie

Vai su

Vai su http://www.skype.com/intl/it/download/skype/linux/choose/ clicchi su mandriva e poi fai doppio clic sul file che scarichi. Dovrebbe bastare.

non riesco ad aprire kmess e wine

hei ciao ho installato da poko kubutu e mi trovo un pò spaesato...ho scaricato kmess e wine e non so come avviare l'installazione...quando clicco sui file mi apre una pagina piena di caratteri....cosa devo fare per farli partire?

Devi cercare nel menu un

Devi cercare nel menu un programma dal nome Synaptics oppure gestore pacchetti o simile e da lì scegliere il programma da installare. Sarà lui a scaricare il programma ed a installarlo. Se vuoi fare tutto a mano ti consiglio di scaricare un pacchetto in formato .deb per ubuntu, poi doppio click e il resto lo fa il sistema.
Ciao, Mike :)

problema shell

ho provato ad installare amsn 8.4 su eeepc, seguendo le procedure che si trovano in rete...
ho premuto qualche enter di troppo nella shell e ora quando scarico il pacchetto mi dice "FALLITO. PROVA COL PACKAGE INSTALL INVECE".
Come posso fare????
Per installare amsn devo lancioralo per forza da lì!

Purtroppo non ho un eeepc

Purtroppo non ho un eeepc quindi non saprei dove mettere le mani, puoi dare un'occhiata QUI.
Ciao, Mike :)