Sto esaminando un file UTF-8 principalmente con molte linee lunghe. Tuttavia, il file non è interamente file di testo, c'è un po 'di spazzatura. Per trovare il mio punto di interesse sto usando hd
e grep
.Salta all'indirizzo byte in vim?
Quindi ad un certo punto so che è interessato ad es. 0000301a, quindi voglio aprire rapidamente il file in Vim e saltare in quella posizione.
Esempio (in realtà un file molto piccolo, ecco la posizione è 0000001C):
[email protected]:~$ hd file | grep -C 10 \ 00\
00000000 6c 69 6e 65 31 0a 6c 69 6e 65 32 0a 6c 69 6e 65 |line1.line2.line|
00000010 33 0a 6c 69 6e 65 34 0a 6c 69 6e 65 00 35 0a 6c |3.line4.line.5.l|
00000020 69 6e 65 36 0a 6c 69 6e 65 37 0a 6c 69 6e 65 38 |ine6.line7.line8|
00000030 0a 6c 69 6e 65 39 0a 6c 69 6e 65 31 30 0a |.line9.line10.|
0000003e
[email protected]:~$
C'è un trucco in Vim per passare a una posizione di byte ? O il più vicino possibile?
Non so se questo funzionerà nel tuo caso, ma hai provato a convertire l'offset in decimale usando ': goto 1234'? –
Non è necessario utilizzare la numerazione esadecimale a proposito, è possibile formattare l'output hd come desiderato. Dai un'occhiata alla pagina man. – glts