Utilizo la siguiente sintaxis para capturar solo el número del nombre de host de la máquina
echo machineLinux05 | sed s'/\./ /g' | awk '{print $1}' | sed 's/[^0-9]//g'
05
Pero de esta manera no es tan elegante. ¿Hay otra alternativa corta para capturar el número de la cadena?
sed s'/\./ /g' | awk '{print $1}'
? En su ejemplo, ninguno de estos comandos hace nada.tr -cd '[0-9]' <<< "machineLinux05"
echo machineLinux05.FG,com | grep -o '[0-9]\+'
También funciona.Respuestas:
Podrías deshacerte de la primera
sed
yawk
no tienen sentido:fuente
Pruebe el siguiente one-liner:
fuente
s/\..*$//
elimina el primer punto y todos los caracteres posteriores.