Operazioni elementari sui file con Bash

Anzitutto vediamo come creare una serie di file vuoti in bash, utilizzando il commando touch.

Adesso proviamo a rinominare i file creati (cambiando l’estensione da *.txt a *.log), tenendo a mente i seguenti modificatori fondamentali:

#: sottrae dall’inizio della stringa (minimale)

%: sottrae dalla fine della stringa (minimale)

: sostituisce una sottostringa con un altra (solo la prima volta che viene incontrata)

Infine mettiamo insieme il tutto in un piccolo eseguibile che, una volta richiamato, permette di modificare l’estensione di tutti i file da ext1 a ext2.

Il programma in questione accetta come argomento le due estensioni da modificare, qualora non vengano forniti esattamente due argomenti segnala all’utente l’utilizzo corretto. Dopodiché passa in rassegna, nella sua cartella di appartenenza tutto i file con estensione ext1 e li modifica all’estensione ext2.

Vedi articolo
Bash, dimensione cartella in bytes

Bash, dimensione cartella in bytes

Questa volta proviamo un esercizio un poco più complesso sempre con bash e calcoliamo la dimensione totale dei file in una cartella.

Questa è un’occasione per notare alcune caratteristiche:

  1. dopo la dichiarazione del ciclo while e prima del punto e virgola, è possibile specificare un elenco di parametri nei quali verrà suddivisa la stringa per ogni riga del precedente risultato
  2. il termine $# fa riferimento al numero di parametri presenti nell’argomento al programma (il parametro 0 è il nome del programma stesso)
  3. il termine $1 prende il primo parametro dell’argomento, successivo al termine 0-esimo riferito al nome del programma stesso

L’utilizzo del programma avviene in questo modo:

Vedi articolo
Elenco file in bash con ciclo for

Elenco file in bash con ciclo for

Vediamo come elencare i file con altri due esempi, anzitutto prendendo il commando ls:

E poi con piccola variazione, questa volta eseguiamo il commando all’interno di $( )

 

Vedi articolo
Bash, ciclo for con sequenza

Bash, ciclo for con sequenza

Altro esempio di ciclo for con sequenza in bash.

Il risultato è così:

Vedi articolo
Ciclo for elementare in Bash

Ciclo for elementare in Bash

Prosegue la rubrica delle lezioni banali di Bash.

Proviamo adesso ad inserire un elementare ciclo for che stampi dei numeri a video.

Il risultato dovrebbe essere analogo a questo qua:

Vedi articolo
Come scrivere i programmi in bash, ovvero “Ciao, Mondo!” in bash

Come scrivere i programmi in bash, ovvero “Ciao, Mondo!” in bash

Con l’occasione di un corso di Linux che sto tenendo, ho deciso di pubblicare un po’ di esercizi e spunti per tutti quelli che fossero interessati ad avvicinarsi al bellissimo mondo di bash.

Cominciamo con il nostro primo programma in assoluto: ciaomondo.sh

NB: l’estensione *.sh non è obbligatoria

Creiamo un file chiamato ciamondo.sh digitando da terminale

A questo punto ci troviamo dentro l’editor NANO, per salvare utilizziamo CTRL+O, per uscire CTRL+X.

Inseriamo il seguente codice:

Ciao è una funzione, o metodo, che non va altro che stampare a schermo, mediante echo la stringa “Ciao, Mondo!”.

Perché possa funzionare richiamiamo la funzione dopo averla dichiarata.

Salviamo e torniamo nella cartella dove abbiamo creato il file.

Rendiamo il file eseguibile con:

E poi testiamolo:

 

Vedi articolo