FAQ: bash
Come convertire una netmask IPV4 in CIDR
Convertire da Bash un numero decimale in esadecimale
Come per la faq con la conversione in binario anche in questa facciamo utilizzo delle fantastiche estensioni bash sulle parentisi graffe per convertire in esadecimale.
Quindi, considerando sempre la faq bash sul binario partiamo inizialmente con il convertire un numero decimale tra 0 e 255 che corrisponde ad una cifra esadecimale tra 0 ed FF:
hex=({{0..9},{a..f}}{{0..9},{a..f}})
echo ${hex[*]}
(altro…) Convertire da Bash un numero decimale in binario
Supponiamo di star lavorando su uno script bash e che per qualche esigenza, nemmeno troppo difficile dalla realtà, sia indispensabile dover convertire un numero o una variabile decimale in numero binario.
Ci sono naturalmente diverse soluzioni ma quella che vi propongo non fa utilizzo di programmi esterni ma è bash a tutti gli effetti.
Per prima cosa dobbiamo sapere il valore massimo del numero binario da ottenere in Bash ovvero in quanti bit potrà essere compreso.
(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…)