Dato un nome host nel formato aaa0.bbb.ccc
, voglio estrarre la prima sottostringa prima di .
, ovvero, aaa0
in questo caso. Io uso seguente script awk a farlo,Utilizzare Awk per estrarre la sottostringa
echo aaa0.bbb.ccc | awk '{if (match($0, /\./)) {print substr($0, 0, RSTART - 1)}}'
mentre lo script in esecuzione su una macchina A
produce aaa0
, in esecuzione sulla macchina B
produce solo aaa
senza 0
alla fine. Entrambi macchina funziona Ubuntu/Linaro
, ma A
corre versione di awk (gawk con la versione 3.1.8, mentre B
con awk più anziani (mawk con la versione 1.2)
chiedo in generale, come scrivere uno script awk compatibile che esegue la stessa funzionalità ...
Downvoter, per favore fatemi sapere l'errore. Grazie :) – anishsane