Usando -V
("classificação de versão"), implementado pela maioria sort
:
$ sort -t '=' -k2 -V file
string_D=10.a.y.10
string_C=10.a.y.104
string_A=10.a.y.155
string_E=10.a.y.198
string_B=10.a.y.212
string_Y=10.b.x.10
string_X=10.b.x.104
string_U=10.b.x.155
string_Z=10.b.x.198
string_V=10.b.x.212
Se a=15
e b=140
:
$ sort -t '=' -k2 -V file
string_D=10.15.y.10
string_C=10.15.y.104
string_A=10.15.y.155
string_E=10.15.y.198
string_B=10.15.y.212
string_Y=10.140.x.10
string_X=10.140.x.104
string_U=10.140.x.155
string_Z=10.140.x.198
string_V=10.140.x.212
O -k2
com -t '='
faz com que sort
considere os dados após o =
como a chave de classificação.