diff options
Diffstat (limited to 'it_IT.ISO8859-15/books/unix-introduction/getting-started/chapter.xml')
-rw-r--r-- | it_IT.ISO8859-15/books/unix-introduction/getting-started/chapter.xml | 2214 |
1 files changed, 2214 insertions, 0 deletions
diff --git a/it_IT.ISO8859-15/books/unix-introduction/getting-started/chapter.xml b/it_IT.ISO8859-15/books/unix-introduction/getting-started/chapter.xml new file mode 100644 index 0000000000..b5c3a6f7c1 --- /dev/null +++ b/it_IT.ISO8859-15/books/unix-introduction/getting-started/chapter.xml @@ -0,0 +1,2214 @@ +<?xml version="1.0" encoding="iso-8859-15" standalone="no"?> +<!-- + The FreeBSD Italian Documentation Project + + $FreeBSD$ +--> + +<chapter id="getting-started"> + <title>Iniziamo</title> + + <sect1 id="getting-started-login"> + <title>Effettuare il login</title> + + <para>Una volta che l'utente si è collegato a un sistema Unix, gli + viene chiesto di inserire un <emphasis>login</emphasis> username + (nome utente) e una <emphasis>password</emphasis> (codice segreto). Il + login username è il nome univoco dell'utente sul sistema. La + password è un codice modificabile conosciuto solo dall'utente. + Alla richiesta di <emphasis>login</emphasis>, l'utente deve inserire lo + username e alla richiesta della <emphasis>password</emphasis>, deve essere + inserita la password effettiva.</para> + + <note> + <para><emphasis>Unix è un sistema case sensitive</emphasis> (fa + distinzione tra caratteri minuscoli e maiuscoli). Quindi sia il + <emphasis>login</emphasis> username che la <emphasis>password</emphasis> + devono essere inseriti esattamente come sono stati creati; il login + username è normalmente in minuscolo.</para> + </note> + + <sect2 id="getting-started-login-terminal-type"> + <title>Tipi di terminali</title> + + <para>Molti sistemi sono configurati in modo tale da richiedere all'utente + il tipo di terminale da usare, il quale dovrebbe essere settato al tipo + di terminale usato nella fase di login. Molti computer lavorano + se si sceglie il tipo <literal>vt100</literal>. Gli utenti connessi + tramite una workstation Sun molto probabilmente useranno il tipo + <literal>sun</literal>; quelli che usano un Terminale-X molto + probabilmente useranno <literal>xterms</literal> oppure + <literal>xterm</literal>.</para> + + <para>Il tipo di terminale indica al sistema Unix come interagire quando + una sessione viene aperta.</para> + + <para>Può essere necessario risettare il tipo di terminale, + digitando il comando:</para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="3.3in"/> + + <tbody> + <row> + <entry><command>setenv TERM <replaceable><tipo di + terminale></replaceable></command></entry> + + <entry>-se si usa la shell C + (vedere <link linkend="shells">Capitolo 5</link>)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para>(Inoltre su alcuni sistemi Unix, ad esempio MAGNUS, è + necessario dare il comando <command>unsetenv + TERMCAP</command>.)</para> + + <para>oppure</para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="3.3in"/> + + <tbody> + <row> + <entry><command>TERM=<replaceable><tipo di + terminale></replaceable>; export TERM</command></entry> + + <entry>-se si usa la shell Bourne + (vedere <link linkend="shells">Capitolo 5</link>)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para>dove <replaceable><tipo di terminale></replaceable> è + il tipo di terminale, come <literal>vt100</literal>, che si desidera + settare.</para> + </sect2> + + <sect2 id="getting-started-login-passwords"> + <title>Password</title> + + <para>Quando viene assegnato il proprio account, si riceve una password + iniziale. Questa password è importate sia per la sicurezza + del sistema sia per una sicurezza personale, perciò la password + per il proprio account può essere cambiata a propria scelta. Il + comando per cambiare una password è + &man.passwd.1;. Verrà chiesto di inserire sia la propria + vecchia password, sia la nuova password desiderata, quest'ultima due + volte. Se si sbaglia la propria vecchia password o non si inserisce + quella nuova nello stesso modo per due volte, il sistema + indicherà che la password non ha subito cambiamenti.</para> + + <para>Alcuni amministratori di sistema hanno programmi che verificano + l'accuratezza di una password (che deve essere sufficientemente criptica + per assicurare una certa sicurezza al sistema). Un cambiamento di + password può essere rifiutato da questi programmi.</para> + + <para>Quando si sceglie una password, è importante che questa non + sia in qualche modo indovinabile né per qualche sconosciuto + che tenta di scoprirla né per un conoscente. I suggerimenti per + scegliere e mantenere una password sono i seguenti:</para> + + <itemizedlist> + <listitem> + <para>non usare una parola (o parole) di un linguaggio;</para> + </listitem> + + <listitem> + <para>non usare il proprio nome;</para> + </listitem> + + <listitem> + <para>non usare informazioni che possono essere trovate nel proprio + portafoglio;</para> + </listitem> + + <listitem> + <para>non usare informazioni comunemente conosciute circa se stessi + (come il soprannome, patente di guida, ecc.);</para> + </listitem> + + <listitem> + <para>non usare caratteri di controllo. Alcuni sistemi non li + accettano;</para> + </listitem> + + <listitem> + <para>non scrivere la password in qualche posto;</para> + </listitem> + + <listitem> + <para>non dare la propria password a *nessuno*;</para> + </listitem> + </itemizedlist> + + <itemizedlist> + <listitem> + <para>usare un mix di tipi di caratteri (alfabetici, numerici, + speciali);</para> + </listitem> + + <listitem> + <para>usare un mix di caratteri maiuscoli e caratteri + minuscoli;</para> + </listitem> + + <listitem> + <para>usare un minimo di 6 caratteri;</para> + </listitem> + + <listitem> + <para>scegliere una password in modo da poterla ricordare;</para> + </listitem> + + <listitem> + <para>cambiare di frequente la propria password;</para> + </listitem> + + <listitem> + <para>assicurarsi che nessuna persona vicino a voi vi guardi quando si + inserisce la propria password.</para> + </listitem> + </itemizedlist> + </sect2> + + <sect2 id="getting-started-login-exiting"> + <title>Uscita</title> + + <para><keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>D</keycap> + </keycombo> - indica la fine di un flusso di dati; + può far uscire dal sistema un utente. L'ultimo caso è + disabilitato su molti sistemi</para> + + <para><keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>C</keycap> + </keycombo> - interruzione</para> + + <para>&man.logout.1; - rilascia il sistema</para> + + <para>&man.exit.1; - rilascia la shell</para> + </sect2> + + <sect2 id="getting-started-login-identity"> + <title>Identità</title> + + <para>Il sistema identifica un utente attraverso il numero di utente e il + numero di gruppo (rispettivamente <emphasis>userid</emphasis> e + <emphasis>groupid</emphasis>) assegnati dall'amministratore di sistema. + Generalmente non è necessario conoscere il proprio userid e + groupid, poichè il sistema traduce in modo automatico lo userid + in username (e viceversa) ed il groupid in groupname (e viceversa). + Probabilmente si conosce già lo username: è il nome + utilizzato per il login. Il groupname non è ovvio, e in + realtà si può appartenere a più di un gruppo. Il + proprio gruppo primario è quello associato con il proprio + username nel file database delle password, configurato + dall'amministratore di sistema. Similmente, c'è un file database + per i gruppi, dove l'amministratore di sistema può assegnare + gruppi aggiuntivi ad un utente.</para> + + <para>Nei seguenti esempi il simbolo &prompt.user; è il proprio + prompt di shell e non va digitato.</para> + + <para>Si può determinare il proprio userid e la lista dei gruppi di + appartenenza con i comandi &man.id.1; e &man.groups.1;. Su alcuni + sistemi &man.id.1; mostra le informazioni sull'utente e le informazioni + sul gruppo primario, esempio:</para> + + <screen>&prompt.user; <userinput>id</userinput> +uid=1101(frank) gid=10(staff)</screen> + + <para>su altri sistemi mostra anche le informazioni sui gruppi aggiuntivi + di appartenenza:</para> + + <screen>&prompt.user; <userinput>id</userinput> +uid=1101(frank) gid=10(staff) groups=10(staff),5(operator),14(sysadmin),110(uts)</screen> + + <para>Il comando &man.groups.1; mostra le informazioni di tutti i gruppi + di appartenenza, esempio:</para> + + <screen>&prompt.user; <userinput>groups</userinput> +staff sysadmin uts operator</screen> + </sect2> + </sect1> + + <sect1 id="getting-started-comm-line-struct"> + <title>Struttura della linea di comando di Unix</title> + + <para>Un <emphasis>comando</emphasis> è un programma che chiama + il sistema Unix per qualche compito. Un comando ha la forma:</para> + + <para><command><replaceable>comando</replaceable> + [<replaceable>opzioni</replaceable>] + [<replaceable>argomenti</replaceable>]</command></para> + + <para>dove un <emphasis>argomento</emphasis> indica su cosa il comando deve + realizzare la sua azione, generalmente un file o una serie di file. + Un'opzione modifica il comando, cambiandone il modo di esecuzione.</para> + + <para>I comandi sono case sensitive (sensibili alle lettere maiuscole e + minuscole). <command><replaceable>comando</replaceable></command> + e <command><replaceable>Comando</replaceable></command> non sono + la stessa cosa.</para> + + <para>Le <emphasis>opzioni</emphasis> sono generalmente precedute da un + trattino (<keycap>-</keycap>) e per molti comandi, più opzioni + possono essere messe insieme nella forma:</para> + + <para><command><replaceable>comando</replaceable> + -[<replaceable>opzione</replaceable>][<replaceable>opzione</replaceable>][<replaceable>opzione</replaceable>]</command></para> + + <para>esempio:</para> + + <para><command>ls -alR</command></para> + + <para>che mostrerà un listato lungo di tutti i file che si trovano + nella directory corrente e ricorsivamente anche quelli che si trovano in + tutte le sotto-directory.</para> + + <para>In molti comandi si possono separare le opzioni, facendole precedere + ognuna da un trattino, esempio:</para> + + <para><command><replaceable>comando + -opzione1 -opzione2 -opzione3</replaceable></command></para> + + <para>come in:</para> + + <para><command>ls -a -l -R</command></para> + + <para>Alcuni comandi hanno opzioni che richiedono parametri. Le opzioni che + richiedono parametri sono di solito specificate separatamente, + esempio:</para> + + <para><command>lpr -Pprinter3 -#2 file</command></para> + + <para>che trasmetterà 2 copie del file specificato a + <devicename>printer3</devicename>.</para> + + <para>Ci sono delle convenzioni standard per i comandi. Comunque, non tutti + i comandi Unix seguono questo standard. Alcuni non richiedono il trattino + prima dell'opzione e alcuni non permettono di mettere insieme più + opzioni, per esempio alcuni possono richiedere che ogni opzione sia + preceduta da un trattino e separata con uno spazio bianco da un'altra + opzione o argomento.</para> + + <para>Le opzioni e la sintassi di un comando sono mostrate nelle + <emphasis>pagine man</emphasis> del comando.</para> + </sect1> + + <sect1 id="getting-started-control-keys"> + <title>Tasti di controllo</title> + + <para>I <emphasis>tasti di controllo</emphasis> sono usati per realizzare + speciali funzioni su linea di comando o all'interno di un editor. + Queste funzioni possono essere generate premendo contemporaneamente il + tasto <keycap>control</keycap> e alcuni altri <emphasis>tasti</emphasis>. + Questa combinazione è generalmente indicata con + <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap><replaceable>Tasto</replaceable></keycap> + </keycombo> (oppure <keycombo action="simul"> + <keycap>^</keycap> + <keycap><replaceable>Tasto</replaceable></keycap> + </keycombo>). <keycombo action="simul"> + <keycap>Control</keycap> + <keycap>S</keycap> + </keycombo> può essere scritto come <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>S</keycap> + </keycombo> (oppure <keycombo action="simul"> + <keycap>^</keycap> + <keycap>S</keycap> + </keycombo>). Con i tasti di controllo le lettere maiuscole e minuscole + sono la stessa cosa, così <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>S</keycap> + </keycombo> è lo stesso di <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>s</keycap> + </keycombo>. Questo particolare esempio (<keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>S</keycap> + </keycombo>) è un segnale di <emphasis>stop</emphasis> e + dice al terminale di non accettare più input. Il terminale + rimarrà sospeso finchè un segnale di + <emphasis>start</emphasis> <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>Q</keycap> + </keycombo> non sarà generato.</para> + + <para><keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>U</keycap> + </keycombo> è normalmente il segnale di + <quote><emphasis>cancellazione di linea</emphasis></quote> per il proprio + terminale. Quando lo si digita, l'intera linea di input viene + cancellata.</para> + + <para>Nell'editor &man.vi.1; si possono inserire i tasti + di controllo all'interno del file di testo facendo seguire a + <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>V</keycap> + </keycombo> il carattere di controllo desiderato; così per + inserire in un documento <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>H</keycap> + </keycombo> si digita <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>V</keycap> + </keycombo>, <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>H</keycap> + </keycombo>.</para> + </sect1> + + <sect1 id="getting-started-stty"> + <title>stty - controllo del terminale</title> + + <para>&man.stty.1; mostra o configura le opzioni di controllo del terminale. + L'abbreviazione <quote><emphasis>tty</emphasis></quote> risale fino ai + giorni dei <quote>teletypewrite</quote>, che erano associati alla + trasmissione di messaggi telegrafici ed erano primitivi modelli di + terminali di computer.</para> + + <para>Per i nuovi utenti, l'uso principale del comando &man.stty.1; riguarda + l'assegnazione della funzione di <quote>cancellazione di linea</quote> ad + un tasto specifico per i loro terminali. Per i programmatori di sistema o + per chi scrive script di shell, il comando &man.stty.1; fornisce uno + strumento prezioso per la configurazione di molti aspetti legati al + controllo di I/O di un dispositivo specifico, inclusi i seguenti:</para> + + <itemizedlist> + <listitem> + <para>carattere di erase (eliminazione carattere) e di + line-kill (eliminazione linea);</para> + </listitem> + + <listitem> + <para>velocità di trasmissione dati;</para> + </listitem> + + <listitem> + <para>controllo di parità sulla trasmissione dati;</para> + </listitem> + + <listitem> + <para>controllo del flusso hardware;</para> + </listitem> + + <listitem> + <para>carattere di nuova linea (<NL>), di return (<CR>) e di + alimentazione linea (<LF>);</para> + </listitem> + + <listitem> + <para>interpretazione del carattere tab;</para> + </listitem> + + <listitem> + <para>modifica di un input grezzo;</para> + </listitem> + + <listitem> + <para>trasformazione di lettere minuscole in lettere maiuscole.</para> + </listitem> + </itemizedlist> + + <para>Il comando &man.stty.1; è molto dipendente dal sistema, quindi + consultare le relative <emphasis>pagine man</emphasis> sul proprio sistema + per i dettagli.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>stty [<replaceable>opzioni</replaceable>]</command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="1.5in"/> + + <tbody> + <row> + <entry><option>(none)</option></entry> + + <entry>mostra i settaggi del terminale</entry> + </row> + + <row> + <entry><option>all (-a)</option></entry> + + <entry>mostra tutte le opzioni</entry> + </row> + + <row> + <entry><option>echoe</option></entry> + + <entry>richiama ERASE come BS-spazio-BS</entry> + </row> + + <row> + <entry><option>dec</option></entry> + + <entry>imposta la modalità specifica dei sistemi operativi + conformi al Digital Equipment Corporation (che distinguono ERASE + da BACKSPACE) (non disponibile su tutti i sistemi)</entry> + </row> + + <row> + <entry><option>kill</option></entry> + + <entry>imposta il carattere per LINE-KILL</entry> + </row> + + <row> + <entry><option>erase</option></entry> + + <entry>imposta il carattere per ERASE</entry> + </row> + + <row> + <entry><option>intr</option></entry> + + <entry>imposta il carattere per INTERRUPT</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <para>Con il comando &man.stty.1; si possono visualizzare e cambiare i + settaggi del proprio terminale di controllo. Per visualizzare tutti + (<option>-a</option>) i settaggi correnti:</para> + + <screen>&prompt.user; <userinput>stty -a</userinput> +speed 38400 baud, 24 rows, 80 columns +parenb -parodd cs7 -cstopb -hupcl cread -clocal -crtscts +-ignbrk brkint ignpar -parmrk -inpck istrip -inlcr -igncr icrnl -iuclc +ixon -ixany -ixoff imaxbel +isig iexten icanon -xcase echo echoe echok -echonl -noflsh -tostop +echoctl -echoprt echoke +opost -olcuc onlcr -ocrnl -onocr -onlret -ofill -ofdel +erase kill werase rprnt flush lnext susp intr quit stop eof +^H ^U ^W ^R ^O ^V ^Z/^Y ^C ^\ ^S/^Q ^D</screen> + + <para>Per cambiare i settaggi usando &man.stty.1;, ad esempio per cambiare + il carattere di erase da <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>?</keycap> + </keycombo> (il tasto elimina) a <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>H</keycap> + </keycombo>:</para> + + <screen>&prompt.user; <userinput>stty erase ^H</userinput></screen> + + <para>Questo setterà l'opzione del terminale solamente per la + sessione corrente. Per far in modo che questo comando sia eseguito + automaticamente ad ogni login, è possibile inserire tale comando + nel file <filename>.login</filename> o <filename>.profile</filename> di + cui si parlerà più avanti.</para> + </sect1> + + <sect1 id="getting-started-get-help"> + <title>Ottenere aiuto</title> + + <para>Il manuale di Unix, usualmente chiamato <emphasis>man page</emphasis> + (pagine man), è disponibile per spiegare l'uso del sistema Unix e + dei suoi comandi. Per servirsi di una pagina man digitare il comando + &man.man.1; al prompt di sistema seguito dal comando di cui si necessitano + informazioni.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>man [<replaceable>opzioni</replaceable>] + <replaceable>nome_comando</replaceable></command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="1.5in"/> + + <tbody> + <row> + <entry><option>-k + <replaceable>parola_chiave</replaceable></option></entry> + + <entry>mostra alcune linee riassuntive dei comandi contenenti la + parola chiave richiesta</entry> + </row> + + <row> + <entry><option>-M <replaceable>path</replaceable></option></entry> + + <entry>percorso per le pagine man</entry> + </row> + + <row> + <entry><option>-a</option></entry> + + <entry>mostra tutte le pagine man trovate (SVR4)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <para>Si può usare &man.man.1; per ottenere una linea riassuntiva di + alcuni comandi che contengono la parola che si vuole ricercare con + l'opzione <option>-k</option>, ad esempio per cercare la parola + <emphasis>password</emphasis>, si digita:</para> + + <screen>&prompt.user; <userinput>man -k password</userinput> +passwd (5) - password file +passwd (1) - cambia la password</screen> + + <para>Il numero in parentesi indica la sezione delle pagine man dove sono + stati trovati i riferimenti. Si può accedere a quella pagina man + (di default si fa riferimento al numero di sezione più basso, ma si + può usare un'opzione su linea di comando per specificarne uno + differente) con:</para> + + <screen>&prompt.user; <userinput>man passwd</userinput> +PASSWD(1) USER COMMANDS PASSWD(1) + +NOME +passwd - cambia password + +SINTASSI +passwd [ -e login_shell ] [ username ] + +DESCRIZIONE +passwd cambia (o setta) la password di un utente. +passwd chiede per due volte la nuova password, senza mostrarla. +Questo per prendere in considerazione la possibilità di digitare errori. +Solamente l'utente stesso e il super-user possono cambiare la password +di un utente. + +OPZIONI + +-e Cambia la shell di login dell'utente.</screen> + + <para>Qui l'output è stato parafrasato e troncato per una questione + di spazio e di copyright.</para> + </sect1> + + <sect1 id="getting-started-directory-nav-control"> + <title>Navigazione e controllo delle directory</title> + + <para>Il file system di Unix è organizzato come la struttura + ramificata di un albero a partire da root. La directory + <emphasis>root</emphasis> del sistema è rappresentata dal carattere + di slash in avanti (<filename>/</filename>). Le directory di sistema e + quelle degli utenti sono organizzate sotto la directory + <emphasis>root</emphasis>. In Unix l'utente non ha una directory root; + generalmente dopo il login gli utenti vengono posizionati nella loro + directory <emphasis>home</emphasis>. Gli utenti possono creare altre + directory sotto la loro directory <emphasis>home</emphasis>. La tabella + che segue mostra alcuni comandi per la navigazione tra directory.</para> + + <table frame="all" id="getting-started-table-directory-nav-control"> + <title>Comandi di navigazione e controllo delle directory</title> + + <tgroup cols="2"> + <colspec colwidth="3in"/> + + <thead> + <row> + <entry align="center">Comando/Sintassi</entry> + + <entry align="center">Cosa fa</entry> + </row> + </thead> + + <tbody> + <row> + <entry><command>cd + [<replaceable>directory</replaceable>]</command></entry> + + <entry>cambia directory</entry> + </row> + + <row> + <entry><command>ls + [<replaceable>opzioni</replaceable>][<replaceable>directory + o file</replaceable>]</command></entry> + + <entry>lista il contenuto della directory o i permessi del + file specificato</entry> + </row> + + <row> + <entry><command>mkdir + [<replaceable>opzioni</replaceable>] + <replaceable>directory</replaceable></command></entry> + + <entry>crea una directory</entry> + </row> + + <row> + <entry><command>pwd</command></entry> + + <entry>mostra la directory (corrente) di lavoro</entry> + </row> + + <row> + <entry><command>rmdir [<replaceable>opzioni</replaceable>] + <replaceable>directory</replaceable></command></entry> + + <entry>rimuove una directory</entry> + </row> + </tbody> + </tgroup> + </table> + + <para>Se si ha una certa familiarità con DOS la tabella che segue + paragona i suoi simili comandi a quelli Unix in modo tale da fornire un + appropriato quadro di riferimento.</para> + + <table frame="all" + id="getting-started-table-directory-nav-control-unix-vs-dos"> + <title>Comandi di navigazione e controllo delle directory Unix vs + DOS</title> + + <tgroup cols="3"> + <colspec colwidth="3in"/> + + <colspec colwidth="2in"/> + + <thead> + <row> + <entry align="center">Comando</entry> + + <entry align="center">Unix</entry> + + <entry align="center">DOS</entry> + </row> + </thead> + + <tbody> + <row> + <entry>lista il contenuto di una directory</entry> + + <entry><command>ls</command></entry> + + <entry><command>dir</command></entry> + </row> + + <row> + <entry>crea una directory</entry> + + <entry><command>mkdir</command></entry> + + <entry><command>md</command> & + <command>mkdir</command></entry> + </row> + + <row> + <entry>cambia directory</entry> + + <entry><command>cd</command></entry> + + <entry><command>cd</command> & + <command>chdir</command></entry> + </row> + + <row> + <entry>rimuove una directory</entry> + + <entry><command>rmdir</command></entry> + + <entry><command>rm</command> & + <command>rmdir</command></entry> + </row> + + <row> + <entry>ritorna alla directory home dell'utente</entry> + + <entry><command>cd</command></entry> + + <entry><command>cd\</command></entry> + </row> + + <row> + <entry>mostra la directory corrente di lavoro</entry> + + <entry><command>pwd</command></entry> + + <entry><command>cd</command></entry> + </row> + </tbody> + </tgroup> + </table> + + <sect2 id="getting-started-directory-nav-control-pwd"> + <title>pwd - mostra la directory di lavoro</title> + + <para>In ogni momento si può determinare in che punto si è + nella gerarchia del file system mostrando la directory di lavoro con il + comando &man.pwd.1;, esempio:</para> + + <screen>&prompt.user; <userinput>pwd</userinput> +/home/frank/src</screen> + </sect2> + + <sect2 id="getting-started-directory-nav-control-cd"> + <title>cd - cambia directory</title> + + <para>Ci si può portare in una nuova directory con il comando + &man.cd.1;, cambio di directory. &man.cd.1; accetta sia path name + (percorsi) assoluti sia path name relativi.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>cd [<replaceable>directory</replaceable>]</command></para> + + <para><emphasis>Esempi:</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="3.2in"/> + + <tbody> + <row> + <entry><command>cd</command> (oppure <command>chdir</command> in + alcune shell)</entry> + + <entry>cambia directory</entry> + </row> + + <row> + <entry><command>cd</command></entry> + + <entry>si posiziona nella directory home dell'utente</entry> + </row> + + <row> + <entry><command>cd /</command></entry> + + <entry>si posiziona nella directory di sistema roor (/)</entry> + </row> + + <row> + <entry><command>cd ..</command></entry> + + <entry>sale di un livello di directory</entry> + </row> + + <row> + <entry><command>cd ../..</command></entry> + + <entry>sale di due livelli di directory</entry> + </row> + + <row> + <entry><command>cd + <replaceable>/completo/path/name/da/root</replaceable></command></entry> + + <entry>cambia directory rispetto a un path name assoluto + (notare lo slash iniziale)</entry> + </row> + + <row> + <entry><command>cd + <replaceable>path/da/posizione/corrente</replaceable></command></entry> + + <entry>cambia directory rispetto a un path name relativo alla + posizione corrente (no slash iniziale)</entry> + </row> + + <row> + <entry><command>cd + <replaceable>~username/directory</replaceable></command></entry> + + <entry>cambia directory rispetto alla directory home dell'utente + specificato (il carattere ~ non è valido nella shell + Bourne; vedere il <link + linkend="shells">Capitolo 5</link>).</entry> + </row> + </tbody> + </tgroup> + </informaltable> + </sect2> + + <sect2 id="getting-started-directory-nav-control-mkdir"> + <title>mkdir - crea una directory</title> + + <para>La gerarchia della propria directory home si estende creando + sotto-directory all'interno di essa. Questo è possibile con il + comando &man.mkdir.1;, crea directory. Di nuovo si può + specificare un path name assoluto o relativo della directory che si + vuole creare.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>mkdir [<replaceable>opzioni</replaceable>] + <replaceable>directory</replaceable></command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="1.5in"/> + + <tbody> + <row> + <entry><option>-p</option></entry> + + <entry>crea una directory intermedia (genitore), quando + necessario</entry> + </row> + + <row> + <entry><option>-m <replaceable>modi</replaceable></option></entry> + + <entry>permessi di accesso (SVR4). (Si vedranno i + <quote>modi</quote> più avanti in questo + Capitolo)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <screen>&prompt.user; <userinput>mkdir /home/frank/data</userinput></screen> + + <para>oppure se la directory di lavoro corrente è + <filename>/home/frank</filename>, il seguente comando è + equivalente:</para> + + <screen>&prompt.user; <userinput>mkdir data</userinput></screen> + </sect2> + + <sect2 id="getting-started-directory-nav-control-rmdir"> + <title>rmdir - rimuove una directory</title> + + <para>Per rimuovere una directory è necessario che questa sia + vuota. Altrimenti bisogna prima rimuovere i file contenuti in essa. + Inoltre, non si può rimuovere una directory se questa è la + directory di lavoro corrente, bisogna prima uscire da + quest'ultima.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>rmdir + <replaceable>directory</replaceable></command></para> + + <para><emphasis>Esempi:</emphasis></para> + + <para>Per rimuovere la directory vuota + <filename>/home/frank/data</filename> mentre si è in + <filename>/home/frank</filename> usare:</para> + + <screen>&prompt.user; <userinput>rmdir data</userinput></screen> + + <para>oppure</para> + + <screen>&prompt.user; <userinput>rmdir /home/frank/data</userinput></screen> + </sect2> + + <sect2 id="getting-started-directory-nav-control-ls"> + <title>ls - mostra i contenuti delle directory</title> + + <para>Il comando per visualizzare le proprie directory e i propri file + è &man.ls.1;. È possibile ottenere, attraverso le opzioni, + informazioni circa la dimensione, il tipo, i permessi, la data di + creazione, di modifica e di accesso del file.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>ls [<replaceable>opzioni</replaceable>] + [<replaceable>argomenti</replaceable>]</command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <para>Quando non viene usato nessun argomento, viene mostrato il contenuto + della directory corrente. Ci sono molte utili opzioni per il comando + &man.ls.1;. Segue una lista di alcune di queste. Quando si usa il + comando, le opzioni sono raggruppate insieme, precedute da un + trattino (-).</para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.7in"/> + + <tbody> + <row> + <entry><option>-a</option></entry> + + <entry>mostra tutti i file, inclusi quelli che iniziano con + un punto (.)</entry> + </row> + + <row> + <entry><option>-d</option></entry> + + <entry>mostra solo i nomi delle directory, non i file + nella directory</entry> + </row> + + <row> + <entry><option>-F</option></entry> + + <entry>indica il tipo di elemento terminandolo con un + simbolo:</entry> + </row> + + <row> + <entry></entry> + + <entry><emphasis>directory</emphasis> /</entry> + </row> + + <row> + <entry></entry> + + <entry><emphasis>socket</emphasis> =</entry> + </row> + + <row> + <entry></entry> + + <entry><emphasis>link simbolico</emphasis> @</entry> + </row> + + <row> + <entry></entry> + + <entry><emphasis>eseguibile</emphasis> *</entry> + </row> + + <row> + <entry><option>-g</option></entry> + + <entry>mostra il gruppo Unix assegnato al file, richiede l'opzione + <option>-l</option> (BSD solamente) o su una macchina SVR4, + esempio Solaris, questa opzione ha l'effetto opposto</entry> + </row> + + <row> + <entry><option>-L</option></entry> + + <entry>se il file è un link simbolico, mostra le + informazioni del file o della directory a cui il link si + riferisce, non le informazioni del link stesso</entry> + </row> + + <row> + <entry><option>-l</option></entry> + + <entry>listato lungo: mostra i modi, informazioni di link, il + proprietario, la dimensione, la data dell'ultima modifica del + file. Se il file è un link simbolico, una freccia + (-->) precede il percorso del file collegato.</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para>Il <emphasis>campo modi</emphasis> viene fornito dall'opzione + <option>-l</option> e consiste di 10 caratteri. Il primo carattere + è uno dei seguenti:</para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="2in"/> + + <thead> + <row> + <entry>CARATTERE</entry> + + <entry>SE L'ELEMENTO E'</entry> + </row> + </thead> + + <tbody> + <row> + <entry><emphasis>d</emphasis></entry> + + <entry>directory</entry> + </row> + + <row> + <entry><emphasis>-</emphasis></entry> + + <entry>file ordinario</entry> + </row> + + <row> + <entry><emphasis>b</emphasis></entry> + + <entry>file speciale per dispositivi a blocchi</entry> + </row> + + <row> + <entry><emphasis>c</emphasis></entry> + + <entry>file speciale per dispositivi a caratteri</entry> + </row> + + <row> + <entry><emphasis>l</emphasis></entry> + + <entry>link simbolico</entry> + </row> + + <row> + <entry><emphasis>s</emphasis></entry> + + <entry>socket</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para>I 9 caratteri successivi sono raggruppati in 3 blocchi di 3 + caratteri ciascuno. Indicano i <emphasis>permessi di accesso al + file</emphasis>: i primi 3 caratteri si riferiscono ai permessi del + <emphasis>proprietario</emphasis> del file, i successivi 3 ai permessi + degli utenti del <emphasis>gruppo</emphasis> Unix assegnato al file e + gli ultimi 3 caratteri ai permessi degl'<emphasis>altri</emphasis> + utenti sul sistema. Possono assumere i seguenti simboli:</para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.4in"/> + + <tbody> + <row> + <entry><emphasis>r</emphasis></entry> + + <entry>permesso di lettura</entry> + </row> + + <row> + <entry><emphasis>w</emphasis></entry> + + <entry>permesso di scrittura</entry> + </row> + + <row> + <entry><emphasis>x</emphasis></entry> + + <entry>permesso di esecuzione</entry> + </row> + + <row> + <entry><emphasis>-</emphasis></entry> + + <entry>permesso negato</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para>Esistono altri permessi, specificamente progettati per essere usati + in speciali situazioni. Questi sono spiegati nelle pagine man di + &man.ls.1;.</para> + + <para><emphasis>Esempi:</emphasis></para> + + <para>Per mostrare i file in una directory</para> + + <screen>&prompt.user; <userinput>ls</userinput> +demofiles frank linda</screen> + + <para>Per mostrare tutti i file in una directory, inclusi i file nascosti + (iniziano con un punto):</para> + + <screen>&prompt.user; <userinput>ls -a</userinput> +. .cshrc .history .plan .rhosts frank +.. .emacs .login .profile demofiles linda</screen> + + <para>Per avere un listato lungo:</para> + + <screen>&prompt.user; <userinput>ls -al</userinput> +total 24 +drwxr-sr-x 5 workshop acs 512 Jun 7 11:12 . +drwxr-xr-x 6 root sys 512 May 29 09:59 .. +-rwxr-xr-x 1 workshop acs 532 May 20 15:31 .cshrc +-rw------- 1 workshop acs 525 May 20 21:29 .emacs +-rw------- 1 workshop acs 622 May 24 12:13 .history +-rwxr-xr-x 1 workshop acs 238 May 14 09:44 .login +-rw-r--r-- 1 workshop acs 273 May 22 23:53 .plan +-rwxr-xr-x 1 workshop acs 413 May 14 09:36 .profile +-rw------- 1 workshop acs 49 May 20 20:23 .rhosts +drwx------ 3 workshop acs 512 May 24 11:18 demofiles +drwx------ 2 workshop acs 512 May 21 10:48 frank +drwx------ 3 workshop acs 512 May 24 10:59 linda</screen> + </sect2> + </sect1> + + <sect1 id="getting-started-file-mant-comm"> + <title>Comandi di gestione dei file</title> + + <para>Per creare, copiare, rimuovere file e per modificarne i permessi + si possono usare i seguenti comandi.</para> + + <table frame="all" id="getting-started-table-file-mant-comm"> + <title>Comandi di gestione dei file</title> + + <tgroup cols="2"> + <colspec colwidth="3in"/> + + <thead> + <row> + <entry align="center">Comando/Sintassi</entry> + + <entry align="center">Cosa fa</entry> + </row> + </thead> + + <tbody> + <row> + <entry><command>chgrp [<replaceable>opzioni</replaceable>] + <replaceable>gruppo file</replaceable></command></entry> + + <entry>cambia il gruppo assegnato ad un file</entry> + </row> + + <row> + <entry><command>chmod [<replaceable>opzioni</replaceable>] + <replaceable>file</replaceable></command></entry> + + <entry>cambia i permessi di accesso a file o directory</entry> + </row> + + <row> + <entry><command>chown [<replaceable>opzioni</replaceable>] + <replaceable>proprietario file</replaceable></command></entry> + + <entry>cambia il proprietario di un file; può essere usato + solamente dal super-user</entry> + </row> + + <row> + <entry><command>cp [<replaceable>opzioni</replaceable>] + <replaceable> file1 file2</replaceable></command></entry> + + <entry>copia <filename><replaceable>file1</replaceable></filename> + in <filename><replaceable>file2</replaceable></filename>; + <filename><replaceable>file2</replaceable></filename> non dovrebbe + già esistere. Questo comando crea o sovrascrive + <filename><replaceable>file2</replaceable></filename></entry> + </row> + + <row> + <entry><command>mv [<replaceable>opzioni</replaceable>] + <replaceable>file1 file2</replaceable></command></entry> + + <entry>muove (rinomina) + <filename><replaceable>file1</replaceable></filename> in + <filename><replaceable>file2</replaceable></filename></entry> + </row> + + <row> + <entry><command>rm [<replaceable>opzioni</replaceable>] + <replaceable>file</replaceable></command></entry> + + <entry>elimina un file o una directory (<option>-r</option> rimuove + ricorsivamente le directory e il loro contenuto) + (<option>-i</option> chiede conferma prima di rimuove i + file)</entry> + </row> + </tbody> + </tgroup> + </table> + + <para>Se si ha una certa familiarità con DOS la tabella che segue + paragona i suoi simili comandi a quelli Unix in modo tale da fornire un + appropriato quadro di riferimento.</para> + + <table frame="all" id="getting-started-table-file-mant-comm-unix-vs-dos"> + <title>Comandi di gestione dei file Unix vs DOS</title> + + <tgroup cols="3"> + <colspec colwidth="3in"/> + + <colspec colwidth="2in"/> + + <thead> + <row> + <entry align="center">Comando</entry> + + <entry align="center">Unix</entry> + + <entry align="center">Dos</entry> + </row> + </thead> + + <tbody> + <row> + <entry>copia un file</entry> + + <entry><command>cp</command></entry> + + <entry><command>copy</command></entry> + </row> + + <row> + <entry>muove un file</entry> + + <entry><command>mv</command></entry> + + <entry><command>move</command> (non supportato in tutte le + versioni di Dos)</entry> + </row> + + <row> + <entry>rinomina un file</entry> + + <entry><command>mv</command></entry> + + <entry><command>rename</command> & + <command>ren</command></entry> + </row> + + <row> + <entry>elimina un file</entry> + + <entry><command>rm</command></entry> + + <entry><command>erase</command> & + <command>del</command></entry> + </row> + + <row> + <entry>mostra un file a schermo</entry> + + <entry><command>cat</command></entry> + + <entry><command>type</command></entry> + </row> + + <row> + <entry>mostra un file a schermo, una pagina alla volta</entry> + + <entry><command>more</command>, <command>less</command>, + <command>pg</command></entry> + + <entry><command>type /p</command> (non supportato in tutte + le versioni di Dos)</entry> + </row> + </tbody> + </tgroup> + </table> + + <sect2 id="getting-started-file-mant-comm-cp"> + <title>cp - copia un file</title> + + <para>Il comando &man.cp.1; copia il contenuto di un file in un altro + file.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>cp [<replaceable>opzioni</replaceable>] + <replaceable>filename1 filename2</replaceable></command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.5in"/> + + <tbody> + <row> + <entry><option>-i</option></entry> + + <entry>interattivo (chiede conferma prima di procedere)</entry> + </row> + + <row> + <entry><option>-r</option></entry> + + <entry>copia ricorsivamente una directory</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <screen>&prompt.user; <userinput>cp <replaceable>filename1 filename2</replaceable></userinput></screen> + + <para>Si hanno due copie del file, ognuna con un identico contenuto. + Questi file sono completamente indipendenti tra loro e possono essere + editati e modificati entrambi quando necessario. Ciascuno di essi ha il + proprio inode, i propri blocchi di dati e il proprio elemento nella + tabella di directory.</para> + </sect2> + + <sect2 id="getting-started-file-mant-comm-mv"> + <title>mv - sposta un file</title> + + <para>Il comando &man.mv.1; rinomina (sposta) un file.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>mv [<replaceable>opzioni</replaceable>] + <replaceable>vecchio_file nuovo_file</replaceable></command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.5in"/> + + <tbody> + <row> + <entry><option>-i</option></entry> + + <entry>interattivo (chiede conferma prima di procedere)</entry> + </row> + + <row> + <entry><option>-f</option></entry> + + <entry>non chiede la conferma quando si sovrascrive un file + esistente (ignora <option>-i</option>)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <screen>&prompt.user; <userinput>mv <replaceable>vecchio_file nuovo_file</replaceable></userinput></screen> + + <para>Il file <filename><replaceable>nuovo_file</replaceable></filename> + sostituisce + <filename><replaceable>vecchio_file</replaceable></filename>. + In realtà tutto quello che è stato fatto è aver + aggiornato l'elemento della tabella di directory per attribuire al file + il nuovo nome. Il contenuto del file rimane come era prima della + rinominazione.</para> + </sect2> + + <sect2 id="getting-started-file-mant-comm-rm"> + <title>rm - elimina un file</title> + + <para>Il comando &man.rm.1; elimina un file.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>rm [<replaceable>opzioni</replaceable>] + <replaceable>filename</replaceable></command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.5in"/> + + <tbody> + <row> + <entry><option>-i</option></entry> + + <entry>interattivo (chiede conferma prima di procedere)</entry> + </row> + + <row> + <entry><option>-r</option></entry> + + <entry>rimuove una directory ricorsivamente, rimuovendo prima i file + e le directory sottostanti</entry> + </row> + + <row> + <entry><option>-f</option></entry> + + <entry>non chiede conferma prima di procedere + (ignora <option>-i</option>)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <screen>&prompt.user; <userinput>rm <replaceable>filename</replaceable></userinput></screen> + + <para>Visualizzando il contento della directory si vedrà che quel + file non esiste più. In realtà tutto quello che è + stato fatto è aver rimosso l'elemento dalla tabella di directory + e marcato l'inode come <quote>non usato</quote>. Il contenuto del file + è ancora sul disco, ma ora il sistema non ha più modo di + identificare quei blocchi di dati con il nome del file eliminato. Non + c'è un certo comando per + <quote><emphasis>riprendere</emphasis></quote> un file che è + stato eliminato in questo modo. Per questa ragione molti utenti alle + prime armi effettuano un alias del comando di eliminazione in + <command>rm -i</command> dove l'opzione <option>-i</option> chiede di + confermare prima di rimuovere il file. Simili alias sono generalmente + messi nel file <filename>.cshrc</filename> per la shell C (vedere il + <link linkend="shells">Capitolo 5</link>).</para> + </sect2> + + <sect2 id="getting-started-file-mant-comm-file-perm"> + <title>Permessi dei file</title> + + <para>Ciascun file e directory ha permessi che stabiliscono chi può + <emphasis>leggerlo</emphasis>, <emphasis>scriverlo</emphasis> e/o + <emphasis>eseguirlo</emphasis>. Per scoprire i permessi assegnati a un + file, può essere usato il comando &man.ls.1; con l'opzione + <option>-l</option>. Quando si ha la necessità di conoscere il + gruppo per il quale i permessi sono stati assegnati si può usare + l'opzione <option>-g</option> insieme a <command>ls -l</command> + (solamente BSD).</para> + + <para>Quando si usa il comando <command>ls -lg</command> su un file + (<command>ls -l</command> su SysV) l'output sarà mostrato come + il seguente:</para> + + <screen>-rwxr-x--- user Unixgroup size Month nn hh:mm filename</screen> + + <para>La zona dedicata ai caratteri e trattini + (<emphasis>-rwxr-x---</emphasis>) è la zona che mostra il tipo di + file e i permessi del file, come spiegato nella precedente sezione. + Quindi la stringa di permessi dell'esempio, + <emphasis>-rwxr-x---</emphasis>, permette al proprietario + <username>user</username> del file di leggerlo, modificarlo ed + eseguirlo; gli utenti del gruppo <groupname>Unixgroup</groupname> del + file possono leggerlo ed eseguirlo; gli <emphasis>altri</emphasis> + utenti del sistema non possono accedere in alcun modo al file.</para> + </sect2> + + <sect2 id="getting-started-file-mant-comm-chmod"> + <title>chmod - cambio dei permessi del file</title> + + <para>Il comando per cambiare i permessi ad un elemento (file, directory, + ecc.) è &man.chmod.1; (cambio dei modi). La sintassi richiede + l'uso del comando con tre cifre (rappresentanti i permessi del + <emphasis>proprietario</emphasis> (<emphasis>u</emphasis>), i permessi + del <emphasis>gruppo</emphasis> (<emphasis>g</emphasis>) e i permessi + degli <emphasis>altri</emphasis> utenti (<emphasis>o</emphasis>)) + seguite da un argomento (che può essere un nome di un file o una + lista di file e directory). Oppure può essere usato con una + rappresentazione simbolica dei permessi, indicando a quale utenza questi + vanno applicati.</para> + + <para>Ogni tipo di permesso è rappresentato dal proprio numero + equivalente:</para> + + <para><emphasis>lettura=4, scrittura=2, esecuzione=1</emphasis></para> + + <para>o da singoli caratteri:</para> + + <para><emphasis>lettura=r, scrittura=w, esecuzione=x</emphasis></para> + + <para>Il permesso <emphasis>4</emphasis> o <emphasis>r</emphasis> + specifica il permesso di <emphasis>lettura</emphasis>. Se i permessi + desiderati sono lettura e scrittura, il 4 (rappresentante la lettura) e + il 2 (rappresentante la scrittura) sono addizionati per ottenere il + permesso 6. Quindi, un permesso settato a 6 vorrà concedere un + permesso di lettura e di scrittura.</para> + + <para>Alternativamente si può usare una notazione simbolica che + usa un carattere rappresentativo per l'utenza a cui ci si riferisce, uno + per il permesso e uno per l'operazione, dove l'operazione può + essere:</para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.7in"/> + + <tbody> + <row> + <entry>+</entry> + + <entry>aggiunge permessi</entry> + </row> + + <row> + <entry>-</entry> + + <entry>rimuove permessi</entry> + </row> + + <row> + <entry>=</entry> + + <entry>setta permessi</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para>Quindi per settare i permessi di lettura e di scrittura per il + proprietario del file si usa nella notazione simbolica + <emphasis>u=rw</emphasis>.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="3.5in"/> + + <tbody> + <row> + <entry><command>chmod <replaceable>nnn</replaceable> + [<replaceable>lista argomenti</replaceable>]</command></entry> + + <entry>modalità numerica</entry> + </row> + + <row> + <entry><command>chmod [<replaceable>chi</replaceable>] + <replaceable>op</replaceable> + [<replaceable>perm</replaceable>] + [<replaceable>lista argomenti</replaceable>]</command></entry> + + <entry>modalità simbolica</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para>dove <replaceable>nnn</replaceable> sono i tre numeri rappresentanti + i permessi del <emphasis>proprietario</emphasis>, del + <emphasis>gruppo</emphasis> e degli <emphasis>altri</emphasis> utenti; + <replaceable>chi</replaceable> può essere + <emphasis>u,g,o</emphasis> oppure <emphasis>a</emphasis> (tutti) e + <replaceable>perm</replaceable> può essere + <emphasis>r,w,x</emphasis>. Nella notazione simbolica si può + separare la specifica dei permessi con una virgola, come mostrato + nell'esempio qui sotto.</para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.7in"/> + + <tbody> + <row> + <entry><option>-f</option></entry> + + <entry>forza (nessun messaggio di errore viene generato se la + modifica non ha avuto successo)</entry> + </row> + + <row> + <entry><option>-R</option></entry> + + <entry>discesa ricorsiva attraverso la struttura delle directory + e cambio dei modi</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <para>Se i permessi desiderati per il <filename>file1</filename> sono: + <emphasis>proprietario</emphasis>: lettura, scrittura ed esecuzione; + <emphasis>gruppo</emphasis>: lettura ed esecuzione; + <emphasis>altri</emphasis>: lettura ed esecuzione; il comando da usare + è:</para> + + <para><command>chmod 755 file1</command> oppure + <command>chmod u=rwx,go=rx file1</command></para> + + <note> + <para>Quando si assegnano i permessi a un file per l'utenza + <emphasis>gruppo</emphasis> e per l'utenza <emphasis>altri</emphasis> + è necessario che il minimo permesso di esecuzione (inteso come + permesso di accesso) per la directory nella quale il file è + posizionato sia abilitato. Un semplice modo per far questo è + posizionarsi nella directory nella quale i permessi devo essere + garantiti e digitare:</para> + + <para><command>chmod 711 .</command> oppure + <command>chmod u=rw,+x .</command> oppure + <command>chmod u=rwx,go=x .</command></para> + + <para>dove il punto (.) indica la + <emphasis>directory corrente</emphasis>.</para> + </note> + </sect2> + + <sect2 id="getting-started-file-mant-comm-chown"> + <title>chown - cambio del proprietario del file</title> + + <para>Il proprietario di un file può essere cambiato con il comando + &man.chown.8;. Su molte versioni Unix questo può essere + realizzato solo dal super-user, ad esempio, un utente normale non + può attribuire i suoi file ad altri proprietari. &man.chown.8; + è usato come qui sotto, dove &prompt.root; rappresenta il prompt + di shell per il super-user.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="3.5in"/> + + <tbody> + <row> + <entry><command>chown [<replaceable>opzioni</replaceable>] + <replaceable>utente</replaceable>[:<replaceable>gruppo</replaceable>] + <replaceable>file</replaceable></command></entry> + + <entry>(SVR4)</entry> + </row> + + <row> + <entry><command>chown [<replaceable>opzioni</replaceable>] + <replaceable>utente</replaceable>[.<replaceable>gruppo</replaceable>] + <replaceable>file</replaceable></command></entry> + + <entry>(BSD)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.7in"/> + + <tbody> + <row> + <entry><option>-R</option></entry> + + <entry>discende ricorsivamente attraverso la struttura della + directory</entry> + </row> + + <row> + <entry><option>-f</option></entry> + + <entry>forza, non riporta errori</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <screen>&prompt.root; <userinput>chown <replaceable>nuovo_proprietario file</replaceable></userinput></screen> + </sect2> + + <sect2 id="getting-started-file-mant-comm-chgrp"> + <title>chgrp - cambio del gruppo del file</title> + + <para>Con il comando &man.chgrp.1; tutti possono cambiare il gruppo dei + propri file in un altro gruppo di appartenenza.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>chgrp [<replaceable>opzioni</replaceable>] + <replaceable>gruppo file</replaceable></command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.7in"/> + + <tbody> + <row> + <entry><option>-R</option></entry> + + <entry>discende ricorsivamente attraverso la struttura della + directory</entry> + </row> + + <row> + <entry><option>-f</option></entry> + + <entry>forza, non riporta errori</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <screen>&prompt.user; <userinput>chgrp <replaceable>nuovo_gruppo file</replaceable></userinput></screen> + </sect2> + </sect1> + + <sect1 id="getting-started-display-comm"> + <title>Comandi di visualizzazione</title> + + <para>Ci sono alcuni comandi che si possono usare per + <emphasis>visualizzare</emphasis> o <emphasis>esaminare</emphasis> un + file. Alcuni di questi sono editor che verranno trattati più + avanti. Qui si illustreranno alcuni comandi normalmente usati per + visualizzare un file.</para> + + <table frame="all" id="getting-started-table-display-comm"> + <title>Comandi di visualizzazione</title> + + <tgroup cols="2"> + <colspec colwidth="3.5in"/> + + <thead> + <row> + <entry align="center">Comando/Sintassi</entry> + + <entry align="center">Cosa fa</entry> + </row> + </thead> + + <tbody> + <row> + <entry><command>echo + [<replaceable>stringa</replaceable>]</command></entry> + + <entry>riporta in standard ouptut una stringa di testo</entry> + </row> + + <row> + <entry><command>cat [<replaceable>opzioni</replaceable>] + <replaceable>file</replaceable></command></entry> + + <entry>concatena (lista) un file</entry> + </row> + + <row> + <entry><command>more</command> (o <command>less</command> o + <command>pg</command>) + <command>[<replaceable>opzioni</replaceable>] + <replaceable>file</replaceable></command></entry> + + <entry>visualizzazione paginata di un file di testo</entry> + </row> + + <row> + <entry><command>head [<replaceable>-numero</replaceable>] + <replaceable>file</replaceable></command></entry> + + <entry>visualizza le prime 10 (o <replaceable>-numero</replaceable>) + linee di un file</entry> + </row> + + <row> + <entry><command>tail [<replaceable>opzioni</replaceable>] + <replaceable>file</replaceable></command></entry> + + <entry>visualizza le ultime linee (o parte) di un file</entry> + </row> + </tbody> + </tgroup> + </table> + + <sect2 id="getting-started-display-comm-echo"> + <title>echo - mostra un'espressione</title> + + <para>Il comando &man.echo.1; viene utilizzato per ripetere l'argomento + assegnato al comando nel dispositivo standard di uscita. Normalmente + l'argomento termina con un carattere di alimentazione di linea, ma si + può specificare un'opzione per impedirlo.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>echo [<replaceable>stringa</replaceable>]</command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.7in"/> + + <tbody> + <row> + <entry><option>-n</option></entry> + + <entry>non stampa new-line (BSD, shell built-in)</entry> + </row> + + <row> + <entry><option>\c</option></entry> + + <entry>non stampa new-line (SVR4)</entry> + </row> + + <row> + <entry><option>\0<replaceable>n</replaceable></option></entry> + + <entry>dove <replaceable>n</replaceable> è il codice del + carattere ASCII a 8 bit (SVR4)</entry> + </row> + + <row> + <entry><option>\t</option></entry> + + <entry>tab (SVR4)</entry> + </row> + + <row> + <entry><option>\f</option></entry> + + <entry>form-feed (emissione carta) (SVR4)</entry> + </row> + + <row> + <entry><option>\n</option></entry> + + <entry>new-line (SVR4)</entry> + </row> + + <row> + <entry><option>\v</option></entry> + + <entry>tab verticale (SVR4)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <screen>&prompt.user; <userinput>echo Hello Class</userinput></screen> + + <para>oppure</para> + + <screen>&prompt.user; <userinput>echo "Hello Class"</userinput></screen> + + <para>Per impedire il carattere di fine linea:</para> + + <screen>&prompt.user; <userinput>echo -n Hello Class</userinput></screen> + + <para>oppure</para> + + <screen>&prompt.user; <userinput>echo "Hello Class \c"</userinput></screen> + + <para>dove il modo utilizzato nell'ultimo esempio dipende dal comando + &man.echo.1; usato.</para> + + <para>L'opzione <option>\<replaceable>x</replaceable></option> deve essere + interna a un paio di caratteri di quoting singoli o doppi, con o senza + altri caratteri di stringa.</para> + </sect2> + + <sect2 id="getting-started-display-comm-cat"> + <title>cat - concatena un file</title> + + <para>Il comando di concatenazione &man.cat.1; visualizza il contenuto di + un file.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>cat [<replaceable>opzioni</replaceable>] + [<replaceable>file</replaceable>]</command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="0.7in"/> + + <tbody> + <row> + <entry><option>-n</option></entry> + + <entry>precede ogni linea con un numero</entry> + </row> + + <row> + <entry><option>-v</option></entry> + + <entry>visualizza i caratteri non stampabili, eccetto tab, + new-line e form-feed</entry> + </row> + + <row> + <entry><option>-e</option></entry> + + <entry>visualizza $ alla fine di ogni linea (prima di new-line) + (quando usato con l'opzione <option>-v</option>)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <screen>&prompt.user; <userinput>cat <replaceable>filename</replaceable></userinput></screen> + + <para>Si possono specificare una serie di file su linea di comando e + &man.cat.1; li concatenerà ciascuno a turno, seguendo lo stesso + ordine di immissione, esempio:</para> + + <screen>&prompt.user; <userinput>cat <replaceable>file1 file2 file3</replaceable></userinput></screen> + </sect2> + + <sect2 id="getting-started-display-comm-more-less-pg"> + <title>more, less e pg - visualizzazione paginata di un file</title> + + <para>&man.more.1;, &man.less.1; e <command>pg</command> permettono di + visualizzare il contenuto di un file una schermata (pagina) alla volta. + Inoltre permettono di ritornare sulla precedente pagina, di cercare + parole, ecc. Questi comandi potrebbero non essere disponibili sul + proprio sistema Unix.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>more [<replaceable>opzioni</replaceable>] + [<replaceable>+/schema</replaceable>] + [<replaceable>filename</replaceable>]</command></para> + + <para><command>less [<replaceable>opzioni</replaceable>] + [<replaceable>+/schema</replaceable>] + [<replaceable>filename</replaceable>]</command></para> + + <para><command>pg [<replaceable>opzioni</replaceable>] + [<replaceable>+/schema</replaceable>] + [<replaceable>filename</replaceable>]</command></para> + + <para><emphasis>Opzioni</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="4"> + <colspec colwidth="1.5in"/> + + <colspec colwidth="1.5in"/> + + <colspec colwidth="1.5in"/> + + <thead> + <row> + <entry>more</entry> + + <entry>less</entry> + + <entry>pg</entry> + + <entry>Azione</entry> + </row> + </thead> + + <tbody> + <row> + <entry><option>-c</option></entry> + + <entry><option>-c</option></entry> + + <entry><option>-c</option></entry> + + <entry>pulisce lo schermo prima di visualizzare</entry> + </row> + + <row> + <entry></entry> + + <entry><option>-i</option></entry> + + <entry></entry> + + <entry>ignora differenza tra maiuscole e minuscole</entry> + </row> + + <row> + <entry><option>-w</option></entry> + + <entry>default</entry> + + <entry>default</entry> + + <entry>non esce alla fine dell'input, ma si mette in attesa di + comandi</entry> + </row> + + <row> + <entry><option>-<replaceable>linee</replaceable></option></entry> + + <entry></entry> + + <entry><option>-<replaceable>linee</replaceable></option></entry> + + <entry># (numero di) linee di avanzamento</entry> + </row> + + <row> + <entry><option>+/<replaceable>schema</replaceable></option></entry> + + <entry><option>+/<replaceable>schema</replaceable></option></entry> + + <entry><option>+/<replaceable>schema</replaceable></option></entry> + + <entry>ricerca lo schema (pattern)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Controlli interni</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="2in"/> + + <tbody> + <row> + <entry><command>more</command></entry> + + <entry>visualizza (una schermata alla volta) il file + specificato</entry> + </row> + + <row> + <entry align="center"><emphasis><spazio></emphasis></entry> + + <entry>per vedere la schermata successiva</entry> + </row> + + <row> + <entry align="center"><emphasis><return>o<CR></emphasis></entry> + + <entry>per avanzare di una linea</entry> + </row> + + <row> + <entry align="center"><emphasis>q</emphasis></entry> + + <entry>per uscire</entry> + </row> + + <row> + <entry align="center"><emphasis>h</emphasis></entry> + + <entry>help</entry> + </row> + + <row> + <entry align="center"><emphasis>b</emphasis></entry> + + <entry>torna alla schermata precedente</entry> + </row> + + <row> + <entry align="center"><emphasis>/<replaceable>parola</replaceable></emphasis></entry> + + <entry>cerca <replaceable>parola</replaceable> nel resto del + file</entry> + </row> + + <row> + <entry></entry> + + <entry>vedere le <emphasis>pagine man</emphasis> per altre + opzioni</entry> + </row> + + <row> + <entry><command>less</command></entry> + + <entry>simile a &man.more.1;, vedere le + <emphasis>pagine man</emphasis> per le opzioni</entry> + </row> + + <row> + <entry><command>pg</command></entry> + + <entry>in SVR4 equivale a &man.more.1; (pagina)</entry> + </row> + </tbody> + </tgroup> + </informaltable> + </sect2> + + <sect2 id="getting-started-display-comm-head"> + <title>head - mostra l'inizio di un file</title> + + <para>Il comando &man.head.1; visualizza l'inizio di un file.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>head [<replaceable>opzioni</replaceable>] + <replaceable>file</replaceable></command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="1in"/> + + <tbody> + <row> + <entry><option>-n + <replaceable>numero</replaceable></option></entry> + + <entry>numero di linee da visualizzare partendo dall'inizio del + file</entry> + </row> + + <row> + <entry><option>-<replaceable>numero</replaceable></option></entry> + + <entry>come sopra</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <para>Di default &man.head.1; mostra le prime 10 linee del file. Si + possono visualizzare più (o meno) linee con l'opzione + <option>-n <replaceable>numero</replaceable></option> o + <option>-<replaceable>numero</replaceable></option>, ad esempio, per + visualizzare le prime 40 linee:</para> + + <screen>&prompt.user; <userinput>head -40 <replaceable>filename</replaceable></userinput></screen> + + <para>oppure</para> + + <screen>&prompt.user; <userinput>head -n 40 <replaceable>filename</replaceable></userinput></screen> + </sect2> + + <sect2 id="getting-started-display-comm-tail"> + <title>tail - mostra la fine di un file</title> + + <para>Il comando &man.tail.1; visualizza la fine di un file.</para> + + <para><emphasis>Sintassi</emphasis></para> + + <para><command>tail [<replaceable>opzioni</replaceable>] + <replaceable>file</replaceable></command></para> + + <para><emphasis>Opzioni generali</emphasis></para> + + <informaltable frame="none"> + <tgroup cols="2"> + <colspec colwidth="1in"/> + + <tbody> + <row> + <entry><option>-<replaceable>numero</replaceable></option></entry> + + <entry>numero di linee da visualizzare, partendo dalla fine del + file</entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para><emphasis>Esempi:</emphasis></para> + + <para>Di default &man.tail.1; mostra le ultime 10 linee del file, ma si + può specificare un numero differente di linee o di byte, o un + differente punto di inizio all'interno del file. Per visualizzare le + ultime 30 linee di un file, usare l'opzione + <option>-<replaceable>numero</replaceable></option>:</para> + + <screen>&prompt.user; <userinput>tail -30 <replaceable>filename</replaceable></userinput></screen> + </sect2> + </sect1> +</chapter> |