Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Without commenting on what Debian should do about this, I've pretty much given up using `which` myself.

Since `which` is an external command (it's built into some shells, but not bash), it doesn't know about aliases, shell functions, or builtin shell commands.

I've found that bash's built-in `type` command (with its various options) does whatever `which` does, and often does it better.

I also use `command -v foo >/dev/null` to detect whether the command `foo` exists -- for example:

    if command -v less >/dev/null ; then
        export PAGER=less
    fi
I suppose I could also use `type` for the same purpose.

It would be nice if `type` and/or `command` had an option to check whether a command exists without printing anything, but having to add `>/dev/null` is only a minor annoyance.



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

Search: