Esempio:Come rimuovere tutti i caratteri non numerici da una stringa in BASH?
file="123 hello"
come posso modificare il file di stringa in modo tale che esso contiene solo i numeri e la parte di testo viene rimosso?
Quindi,
echo $file
dovrebbe stampare solo 123
.
Per motivi di completezza, è anche possibile salvare il risultato di nuovo nella stessa variabile con il forma bash pura: 'file = $ {file // [! 0-9] /}'. Inoltre, in generale è possibile sostituire 'echo' * qualcosa * '|' * comando * con * comando * '<<<' * qualcosa *. –
Buon punto, @MarkReed. Come per il tipo di utente che chiedevo, preferivo lasciare la risposta molto ingenua, dato che '<<<' può essere strano per chi inizia a bash-script. Aggiorna la mia risposta con 'file = $ file {file // [! 0-9] /}', molte grazie! – fedorqui
Cercando di farlo per una stringa di versione (ad esempio 'git versione 1.7.1')? Usa '$ {gitVersion // [! 0-9.] /}' E mantiene i punti. – bbodenmiller