4 ms·
Why does that upset you? Many shells build a hash table of command locations (in bash or zsh, see the hash builtin command. while you're at it, also check out
by ksherlock 3y ago
Why does that upset you? Many shells build a hash table of command locations (in bash or zsh, see the hash builtin command. while you're at it, also check out the which command) so they don't need to go "recursing through directories" more than once.
I've dealt with systems where you need to update a file with a list of executables and their location. Having the shell handle that automatically is better.
- h_tbob 3y agoIt upsets me because it's so basic. Doesn't it seem like we should have a better system by now? Specifically when I install multiple versions of a library, or install a new library that I don't know, I don't want to dink with the path. I don't see any reason I should have to run this command `export PATH="/path/to/executable:$PATH`. I think that this is bad for 3 reasons: 1. It's error prone because you can easily make typos 2. You have to dink with it to switch which executable you want 3. This is such an insanely common task, it seems ludicrous that we haven't come up with a simple command to register executables!
- cellularmitosis 3y agoHow is this an insanely common task? I literally never have to dink with $PATH on Linux, and only rarely on Mac because homewbrew has decided that certain executables shouldn’t be linked in by default. I think the reason you are getting pushback is that you’ve proposed a complex replacement to a simple existing solution which basically just isn’t a problem. Most developers become allergic to complexity over time, hence the response. It sounds like your actual problem is with the homebrew project, not with $PATH.
- deleted 3y ago[deleted]
- h_tbob 3y agoI think you're correct that $PATH works. But I just think it makes more sense to have a more developed solution, that's all. I thought up another thing wrong with path. I think path should be configurable to search relative paths as well. So I could configure it so that it always searched node_modules/bin for executables as well. What do you think?
- cellularmitosis 3y agoDid you try putting a relative path into $PATH?