Recortar y alinear una salida de comando en el script esperado

Recortar y alinear una salida de comando en el script esperado
{ echo ' ' ;echo ' IP : ' ;ip route get 8.8.8.8 | cut -d' ' -f7,8 | tr -d 'src' ;echo ' ' ;dmidecode -t bios | grep -iw 'Version' ;echo ' ' ;}

el resultado del comando anterior mencionado es:

IP: 10.0.0.1

    Version: 1.8

pero quiero alinearlo correctamente, ejemplo a continuación:

IP:10.0.0.1|Versión:1.8

Por favor ayuda, esta es una solicitud urgente. Gracias de antemano

Respuesta1

Esto podría funcionar:

echo "'IP:$(ip route get 8.8.8.8 | grep '\<via\>' | awk '{print $7}')|Version:$(dmidecode -t bios | grep -iw Version | awk '{print $2}')'"

Tenga en cuenta que no tiene en cuenta eso ip route get 8.8.8.8 | grep '\<via\>'o dmidecode -t bios | grep -iw Versionpodría devolver más de una línea.

información relacionada