FAQ
Come contare il numero di volte che un singolo carattere è presente in ogni riga di un file
Supponiamo di avere un file di testo di nome "file.csv" e di voler contare per ogni riga il numero di volte che si presenta un carattere, ad esempio il carattere ",".
Supponiamo che il risultato sia l'output dello stesso file "file.csv" preceduto in ogni riga dal conteggio stesso.
(altro…)Aggiunta di un disco in LVM
Supponiamo di volere aggiungere un disco o una sua partizione nel gestore LVM di Linux e creare un volume group di nome "quollvg" con un volume logico di nome "quolllv" di dimensione 50GB.
controlliamo l'elenco dei dischi con il comando:
fidisk -l
(altro…) Uso di array associativi in bash
Per dichiarare un array associativo bisogna dichiararlo con
declare -A mioarray/
e come indice si può utilizzare una stringa, questo significa che
(altro…)Uso di array semplici in bash
Con Bash per dichiarare esplicitamente un array bisogna utilizzare
declare -A mioarray
Per avere il valore dell'elemento 5 basta scrivere
echo $[mioarray[5]
(altro…) Redirigere lo standard error sullo standart output
Per redirigere lo standard error di un comando in shell basta utilizzare la seguente sinstassi seguente:
ls file_non_esistente 2>&1 | grep File
oppure ancor meglio per non avere sul terminale lo standard error basta buttarlo in /dev/null
(altro…)Rinominare un gruppo di file in base ad una regexpr
Supponiamo di voler rinominare il nome di un gruppo di file che hanno il seguente template:
file1_tmp.sh
file2_tmp.sh
...
file99_tmp.sh
(altro…) Stampare solo la linea 25 di un file
Supponiamo di voler stampare solamente una singola linea di un file, che per comodità indichiamo con la linea 25
perl -ne '$. == 25 && print && exit' file.txt
Naturalmente se vogliamo stampare anche le righe 31 e 57
(altro…)Encode/decode un file o stringa in Mime Base64
Supponiamo aver una stringa "Prova encode" ed un file "prova.txt" da voler encodare in Mime base64. Per risolvere il problema possiamo semplicemente lanciare la riga di comando:
perl -MMIME::Base64 -e 'print encode_base64("Prova encode")'
perl -MMIME::Base64 -0777 -ne 'print encode_base64($_)' prova.txt
(altro…) Numerare un file di testo
Supponiamo di avere un file di testo (prova.txt) che vogliamo numerare. Possiamo utilizzare:
perl -pe '$_ = "$. $_"' prova.txt
Se si vuole simulare l'output di cat -n prova.txt basta usare:
(altro…)Aggiungere 1 a tutti i numeri presenti su una stringa
$str =~ s/(\d+)/$1+1/ge