Diciamo che sto facendo un grep
e restituisce questa linea:
Invalid value (48) on line 3
Come posso facilmente ottenere quel valore 48
in una variabile nella shell Bourne?
Diciamo che sto facendo un grep
e restituisce questa linea:
Invalid value (48) on line 3
Come posso facilmente ottenere quel valore 48
in una variabile nella shell Bourne?
Risposte:
Se sei sicuro che il modello debba sempre ottenere il valore nella prima coppia di parentesi, tagliare è il tuo migliore amico.
myvar=$(echo 'Invalid value (48) on line 3' | cut -d\( -f2 | cut -d\) -f1)
questo estrae il valore tra i parenti.
$()
non fa parte di SVID e quindi non è strettamente "Bourne Shell". È definito in POSIX però.
sh
e non Bash e compagni.
echo 'Invalid value (48) on line 3'| awk -F'[()]' '{print $2}'