# Dove sono i comandi che eseguo? # Principalmente stanno in alcune directory che contengono appunto il file esegu ibile. Quando scriviamo un comando la shell controlla all'interno delle director y che sono specificate nella variabile 'ambiente PATH. echo $PATH # Le varie directory sono separate dal carattere due punti ":" # PATH dipende dall'utente o dal gruppo al quale esso appartiene. su - su - # Per sapere dov'e' fisicamente un file eseguibile posso usare il comando type: type man type su type ls type dir # eccetera, eccetera. # una buona politica di sicurezza richiede un cambio frequente della password. O vviamente su un sistema che e' effettivamente utilizzato da piu' persone e non c erto sul computer di casa. Il comando e' passwd: passwd # passwd rihiede la vecchia password e poi chiede di digitare la nuova per due v olte. # Se si e' super utenti e' possibile cambiare la password degli utenti "normali" digitando passwd NOME dove NOME e' la username. # Abbiamo gia' scritto alcuni comando per navigare fra le directory: # cd path -> cambia la directory corrente con quella speificata # mkdir path -> crea la directory specificata su path # pwd -> mostra la directory corrente # cd -> riporta alla propria home directory # cd - -> riporta alla directory precedente # cd .. -> sposta la directory corrente alla madre di quella attuale # cd . -> porta alla directory corrente (cioe' pwd resta invariato) # Aluni esempi: pwd cd /usr/local/bin/ pwd cd .. cd ../X11 ls pwd cd - pwd d cd pwd # cd ~ -> porta alla homedirectory. ~ corrisponde alla home directory, cosi' pos so utilizzare questo carattere nei percorsi # per esempio ls cd /tmp ls ~/docs cd ~/docs ll pwd # dovendo invece spostarsi nella homedirectory di un utente di cui conosco la us ername posso scrivere cd ~/docs cd ~nomeutente # Il classico comando per visualizzare il contenuto di una directory e' ls ls ls --help man ls tana:~$ ls /bin arch date kill ping tar ash dd ln ps true awk df login pwd umount bash dmesg ls rm uname bsh dnsdomainname mail rmdir vi cat domainname mkdir rpm vim chgrp echo mknod sed ypdomainname chmod false more setserial zcat chown gawk mount sh cp gunzip mv stty cpio gzip netstat su csh hostname nisdomainname sync # La home directory di un utente appena creato sembrerebbe vuota, ma non e' cosi', il comando ls -a mostra il contenuto "completo" compresi i file/directory invisibili: $ ls -a[Invio] . .bash_profile .riciclaggio .. .bashrc .screenrc .Xdefaults .fvwm2rc95 .twmrc .bash_history .mc.ext .xfm .bash_logout .mc.ini .xinitrc Avrete capito che i file/directory che iniziano con il punto risultano invisibili. Sono solitamente file di configurazione e/o di servizio, generalmente inacessibile all'utente. Vogliamo vederne il contenuto? Basta utilizzare il comando cat: tana:~$ cat .bashrc # .bashrc # User specific aliases and functions # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi