![]() Questo documento e` stato scritto per coloro i quali (come me) sono abituati al mondo di MS-DOS (MicroSoft DisOperative System) che sono passati al sistema (molto)operativo del Pinguino. Come Windows, il sistema linux e` composto da 2 parti (usabili distintamente a differenza di win); Un interfaccia grafica(Installabile facoltativamente) ed un interfaccia base chiamata terminale, la quale ci mette a disposizione una shell (interprete dei comandi nonche' conchiglia e/o guscio) che si chiama "bash" e sta per "Bourne Again SHell". Vediamo Ora i 2 Prompt a confronto(mi auguro sappiate cosa sia un prompt): Ms-DOS: C:VIP3R> -Non c'e` molto da spiegare... :P Il prompt ci dice soltanto in che drive e che directory siamo. - bash: [root@localhost viper]# - Il prompt bash e` composto di varie componenti: la parola prima della @ indica l'username con cui si e` connessi alla macchina , visto che linux e` multiutente; la parte dopo indica l'hostname della macchina, la 3° parola indica l'ultima directory in cui si e` (es.: se si e` in /usr/bin la parola dopo l'hostname sara' bin). Il simbolo alla fine del prompt, varia: se si e` loggati(connessi alla macchina) come utente normale, il simbolo e` un "$"; Se invece si e` loggati come root (amministratore di sistema) il simbolo sara' un cancelletto "#". - Se abbiamo letto da qualche parte le caratteristiche salienti di Linux, sapremo che, a differenza dei sistemi operativi Microsoft [i quali usano i nomi di file in formato OttoPuntoTre (programm.exe)], supporta i nomi di file lunghi, del genere " samba-2.2.0-20010417.i686.rpm ". Per fortuna bash ci viene in aiuto, fornendo un "completatore" di nomi, che si aziona col tasto tab. Praticamente funziona in questo modo: [root@localhost viper]# rpm -i samb ( scriviamo solo le prime lettere , poi premiamo il tasto TAB ) [root@localhost viper]# rpm -i samba-2.2.0-20010417.i686.rpm <- et voilà , non abbiamo bisogno di scrivere il nome del file a mano! mettiamo il caso che pero' nella nostra dir abbiamo 2 file che iniziano con "samba", ad esempio samba-2.2.0-20010417.i686.rpm e samba_blablabla.txt quando andiamo a fare .. [root@localhost viper]# rpm -i samb e premiamo tab, avremo una cosa del genere: [root@localhost viper]# rpm -i samba samba-2.2.0-20010417.i686.rpm samba_blablabla.txt In pratica, il prompt ci chiede almeno un altro carattere, diverso fra i 2 nomi, che gli permetta di capire se vogliamo usare il 1° o il 2° file. Spero di essere stato abbastanza comprensibile, perche` questo e` un concetto ben facile da capire [; Un altra cosa da notare, e` che le directory linux sono separate da una slash "/" invece che da una backslash "" come DOS. ################################## A T T E N Z I O N E #################################### #Prima di procedere ai comandi, ricordate che linux e` case sensitive, # #ovvero attento alle lettere minuscole e maiuscole; # #quindi in un ambiente linux CiAo.exe e` diverso da CIAO.exe come e` diverso da CiaO.exe. # ########################################################################################### Veniamo ora dunque alle operazioni piu' comuni che facevamo col DOS, e ai loro corrispondenti in linux. # Come visualizzo l'aiuto per un comando ? DOS: help nomecomando (oppure nomecomando /?) LINUX: man nomecomando (oppure whatis nomecomando, oppure info nomecomando) # Come Avvio Un programma ? DOS: nomeprog.exe (se l'eseguibile risiede nella dir dove si e` al momento) oppure C:dirprogrammanomeprog.exe LINUX: ./nomeprogramma (se l'eseguibile risiede nella dir dove si e` al momento) oppure /dirprogramma/nomeprogramma, senza il puntino. N.B.: I parametri dei programmi unixiani sono preceduti da dei trattini ( per es.: uname -a ) a differenza # Come vedo cosa c'e` nella directory di lavoro ? DOS: dir LINUX: ls (ci sono molte opzioni in piu' del DOS) N.B.: quando si fa un "ls" o "ls -F" i nomi di alcuni file vengono visualizzati in modo differente. - I nomi dei files eseguibili terminano con un " * " asterisco - I nomi dei files di backup terminano con una tilde " ~ " - I nomi dei files nascosti iniziano con un puntino " . " - I nomi dei files collegamento finiscono con una " @ " chiocciola - Come cambio directory di lavoro ? DOS: cd nomedirectory LINUX: cd nomedirectory (attenti alle / e alle ) # Come Copio un file ? DOS: copy nomefile c:percorso LINUX: cp nomefile /percorso (usate lo switch -i per venire avvertiti delle eventuali sovrascritture) # Come Sposto un file ? DOS: move nomefile c:percorso LINUX: mv nomefile /percorso (usate lo switch -i per venire avvertiti delle eventuali sovrascritture) # Come Cancello un file ? DOS: del nomefile LINUX: rm nomefile # Come Cancello una directory ? DOS: deltree nomedir LINUX: rm -r nomedir (attenti, non c'e` l'undelete) # Come Rinomino un file ? DOS: ren nomefile nomefile1 LINUX: mv nomefile nomefile1 # Come edito un file ? DOS: edit nomefile LINUX: vi nomefile # Come visualizzo il contenuto di un file ? DOS: type nomefile LINUX: cat nomefile # Come visualizzo il contenuto di un file che e` troppo grande per essere visto nello schermo ? DOS: more < nomefile oppure semplicemente more nomefile LINUX: cat nomefile | more # Come cerco un file sull'hard disk ? DOS: dir nomefile /S LINUX: find / -name nomefile (se invece volete cercarlo in una determinata dir al posto di / (ovvero la radice) mettete la dir dove e` situato, find la cerchera' nelle subdirectory # Come faccio a filtrare, visualizzando il contenuto di un file, solo le righe che contengono una determinata parola ? DOS: non si puo' fare :D LINUX: cat nomefile | grep "parola/e" # Come faccio ad avere una lista dei processi che sono in corso ? DOS: mem /c (o mem /p) LINUX: ps (per una lista completa: ps ax) # Come Visualizzo la versione del sistema operativo ? DOS: ver LINUX: uname -a # Come faccio a sapere l'utilizzo della memoria del mio sistema ? DOS: mem LINUX: free (usare l'opzione -t per visualizzare anche una riga coi totali) # Come cambio gli attributi di un file ? DOS: attrib (+-)attr nomefile LINUX: chmod (attributi) nomefile [la sintassi e` COMPLETAMENTE diversa, gli attributi unixiani sono numerici, e poi ci sono anke i permessi sui file(visto che e` un sistema multiutente), cosa un po' complessa da capire, e per questo vi rimando alla pagina man di chmod] # Come Avvio L'interfaccia grafica ? DOS: win ( :D ) LINUX: startx ### Penso che con questi comandi sopra elencati, potete almeno "sopravvivere" in un ambiente unix-like ... :D Parliamo ora di come si installano le applicazioni: Prima di tutto, ci sono 2 metodi principali di distribuzione del software linuxiano: gli RPM e i Tarball. # RPM: Gli RPM (Redhat Package Manager) sono dei pacchetti compressi che contengono il software da installare. La loro caratteristica peculiare è che installano anche i file dipendenti(librerie, etc), consentendo al software di essere installato correttamente e di funzionare. Se un software viene distribuito in rpm, vengono forniti i pacchetti (differenti) per ogni distribuzione linux, in quanto i path dei file sono differenti, a volte. Come si installa un pacchetto rpm: Da root, digitate il comando rpm -i nomefile.rpm # Tarball: I tarball sono dei file in formato .tar.gz che contengono il software da installare. Si decomprimono coi seguenti comandi: gunzip nomefile.tar.gz tar -xvf nomefile.tar Dopo aver fatto questo, entrate nella directory che si è creata con "cd" e fate un ls per vederne il contenuto. Di solito dovreste trovare un file "configure", un eseguibile da eseguire prima dell'installazione (./configure) dopo fatto questo, dovreste trovare un makefile, che crea i file eseguibili del software, avviabile col comando make; dopo il make, eventualmente dovreste installare il software con un "make install". E' buona norma leggere i file "README" e "INSTALL" che molto probabilmente sono contenuti nei tarballs. ### Beh , Amici e , speriamo , AmichE, finisce qui la nostra breve ma intensa avventura nel mondo della bash, e nelle sue analogie o differenze col vetusto MS-DOS. C'è da dire che se vi serve qualche informazione in piu' sull'argomento, vi rimando all " From DOS/Windows to Linux HOWTO ", dal quale è tratta parte di questo articolo, e che è reperibile su www.tldp.org (mi pare :D). Saluti e baci a: tutta la ADCrew, gli amici di IRCnet alkatrasS, FireBladE, tOy`, skakz, Shadow``, PS3, InFiNiTo, e alle amiche SaTaN|Ca`, MiSSva|e`, LaDyEnNy`, e tutto il resto del chan #Ischia@IRCnet. Ringraziamenti speciali vanno a: Me stesso per aver scritto questo cumulo di roba, e a google che mi ha permesso di trovare le info necessarie :D (beh si ho fatto tutto da solo 'sta volta mauhaua). ##eof## Bye :) © GnomixLand http://www.gnomixland.com/ |