tags:

views:

141

answers:

5

Hi all,
In my initial days of using linux I usually had to search google to know the command for doing a particular task. Once I have the command name, i can view its usage using man command-name.
Similarly I was thinking of some utility which can tell the command to do a particular task if the task to be done is specified as an argument and opens the man page for that command e.g:


findUtilty "find all files in a directory"
output:
ls
find

I want to know if some utility of that kind exists, if so it will be very handy especially for newbies. If not then i may like to implement it.

thanx,

+5  A: 

Parsing natural language is hard because there are thousands of ways to rephrase one sentence. Google does it best as far as I know. So, there is no such tool. There are handy and practical manuals that makes it easy to find the right tool for the job. Also, there is a huge community behind core-utils (and linux in general), so try both forums and IRC. Often, the latter is the fastest. And people tend to parse natural language as expected :)

Tamás Szelei
+9  A: 

Not as nice as you are asking about, but

apropos <keyword>

and

man -k <keyword>

can be very useful.

dmckee
apropos is just an alias for man -k, isn't it? Or does it do something different/more?
Tamás Szelei
It is on my MacBook (man manpage: `-k Equivalent to apropos.`), but I have noticed that the preferred usage is a personal decision. I use `man -k`.
dmckee
`man -k` is POSIX. Many systems have an equivalent apropos command. At least on Ubuntu, apropos has additional options, e.g. `-a` to search for commands containing *all* keywords (default is to match *any* keyword).
mark4o
+5  A: 

apropos will do something like you suggest.

Ken Keenan
+2  A: 

I guess it is: List of Unix utilities @ Wikipedia

Vanya
+2  A: 

on Debian (and presumably derived systems) this is also useful:

sudo apt-cache search <keyword>
TREE
You dont need to be root to do this. You can drop the sudo.
camh
interesting. I get a permission error without the sudo. Relevant files appear to be 640 root:root... How do I figure out what they should be? I'll ask on superuser... http://superuser.com/questions/37745/how-do-you-find-out-what-permissions-are-the-default-for-a-debian-package
TREE