modifiche comportamento shell


é possibile fare delle modifiche in modo che alcuni comportamenti della shell siano cambiati:

  • ignoreeof

  • evita che con CTRL + D chiuda il terminale
    sintassi:
    set -o ignoreeof imposta (evita la chiusura)
    set +o ignoreeof elimina (rispristina il default)


  • noclobber

  • evita che un file venga cancellato inavvertitamente da una operazione di redirezione (con il comando >)
    sintassi:
    set -o noclobber imposta (evita la cancellazione)
    set +o noclobber elimina (rispristina il default)


  • noglob

  • disattiva i caratteri speciali della shell, i caratteri *, ?, [, ] e ~ non verranno piu' espansi se presenti all'interno di un file.
    utile per fare riferimento a file che contengono tali caratteri
    sintassi:
    set -o noglob imposta (ignora i caratteri)
    set +o noglob elimina (rispristina il default)

    scrivendo 'pippo*' normalmente la shell espanderebbe pippo con tutti i nomi dei file che iniziano con 'pippo' e terminano con una qualsiasi sequenza di caratteri
    impostando l'opzione noglob, cio' non accadrebbe piu' e sarebbe possibile far riferimento al file pippo* senza problemi.




    personalizzaione shell


    ogni utente puo' avere una versione personalizzata della propria shell modificando opportunamente alcuni file di configurazione
    l'utente puo' creare delle variabili personali e puo' modificare alcune di quelle predefinite dal sistema.
    pwer visualizzare il valore della variabile si usa il comando echo

    I file di configurazione della shell BASH sono 5:
    generali:
    specifici per utente:

    nel momento del login il sistema esgue in ordine questi file:
    1. file profile presente nella directory /etc che definisce le variabili generali
    2. file .bash_profile presente nella directory home dell'utente
    3. file bashrc presente nella directory /etc dove sono presenti gli alias dei comandi
    4. file .bashrc presente nella directory home dell'utente


    nel momento di accesso ad una shell tramite terminale il sistema esgue in ordine questi file:
    1. file bashrc presente nella directory /etc dove sono presenti gli alias dei comandi
    2. file .bashrc presente nella directory home dell'utente


    al logout l sistema esgue in ordine questi file:
    1. file /home/utente/.bash_logout