Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I open a big file with this command: less +G /var/log/blah/file.log

Now when I find the desired info I'd like to know its exact offset in this file, so later I can open that file again and return to that exact place.

So there is the "%X" command which will take me to % inside the file, in offset terms (and not lines!). It's fine, but I'd really love to be able to move to exact, numeric, offset in the file.

What is the command to get the current offset?
And what is the command to move to a specific offset?

And if I'm at that already, how do I get the current offset in percent? (to be used with the "%" command).

Note that I know of marks. They aren't what I'm looking for.

share|improve this question

3 Answers 3

up vote 2 down vote accepted

Got part of my question from here:

100g to go to the 100th line
50p to go to 50% into the file
100P to go to the line containing 100th byte

Now how do I determine the current line number in less?

share|improve this answer
    
Found it: Ctrl+g ! –  Poni Jan 16 '12 at 14:15

Assuming that by 'offset' you mean byte-offset (as opposed to characters), you can use the vi editor and search for the pattern with

/pattern

hit Enter. Repeated fwd searching for the same pattern can be repeated with

/

hit Enter.

Cursor position's line and column numbers are displayed at bottom right, so to go to a particular line, say 201, and column, say 17, you type

201G17l

That's 201, capital G, 17, lowercase l

If your file consists of only 1 line with your pattern at offset 10125, then open it with vi

$ vi my_massive_file

and type

:goto 10125
share|improve this answer
    
i noticed after posting that your file is > 1GB and that is probably why you are using less. vi should be able to handle it if you have enough memory –  venzen Dec 28 '11 at 12:15
    
Yea, it opens way too slow with vi/m. Not good for me. And yes also to your assumption; I mean "offset" as in bytes within the file. –  Poni Dec 28 '11 at 12:52

With my version the lines currently on screen are displayed at the bottom.

To go to a specific line you can type <number>G.

share|improve this answer
    
Since the file is very big (more than GB) I'm not even using lines. I need to deal with offset within the file only. Thanks Rob –  Poni Dec 28 '11 at 11:14

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.