Hacker News new | past | comments | ask | show | jobs | submit login

When running 'look' to get all comments in a file I only get the first found line in the ouput. Can someone explain this?

look "#" .zshrc

There are really a lot more comments (lines starting with '#') in my .zshrc then the first line.




From the manpage:

> As look performs a binary search, the lines in file must be sorted...

I assume you didn't sort your source file first.


When sorting the file first I get no output anymore:

sort ~/.zshrc -o /tmp/.zshrc

look "#" /tmp/.zshrc

Sorry for the noise but I am confused... :|


sort(1) might not use the same ordering as look(1)

Try setting LC_COLLATE=C and export it and retry.


Uh, wow! That was it!

Thanks for this answer...


It doesn't make sense to sort a configuration file, order and context matters. Easier to just use grep '^#' (or even better, ag).


Yes, I am aware of that but I wanted to understand the usage of 'look' at this point. It was a fault to try stuff using the .zshrc file at first because I ran into misunderstanding everything. It was just the first file that came in mind to me. Since sorting a source file and then "looking" for comments makes no sense in any way, grep seems to be really the better choice.


Your .zshrc is almost certainly not a sorted file.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: