3 ms·
> Making up alias for popular tools such as cd cd is a shell builtin on every single *nix shell, not an independent tool. Every shell has its own cd implementa
by amyjess 10y ago
> Making up alias for popular tools such as cd
cd is a shell builtin on every single *nix shell, not an independent tool. Every shell has its own cd implementation.
- dTal 10y agoYou might also add that it's actually impossible to implement cd as a standalone tool - processes cannot change their parent's working directory.
- richardwhiuk 10y agoIt's not pretty, but you can: https://rudd-o.com/linux-and-free-software/the-shell-challenge-changing-another-process-working-directory https://rudd-o.com/linux-and-free-software/the-shell-challen...
- dTal 10y agoWell how about that. Serve me right calling something "impossible". Now what do I say? "Impossible without awful hackery"?
- iaskwhy 10y agoAre other commands also different from shell to shell? It seems like an interesting point, if true.
- snuxoll 10y agoHere's a couple of pages listing the builtins in bash: https://www.gnu.org/software/bash/manual/html_node/Shell-Builtin-Commands.html https://www.gnu.org/software/bash/manual/html_node/Shell-Bui... And zsh: http://zsh.sourceforge.net/Doc/Release/Shell-Builtin-Commands.html http://zsh.sourceforge.net/Doc/Release/Shell-Builtin-Command... Powershell doesn't really have "builtins" per-se, every cmdlet is executed in the process of the shell itself but they're all contained within loadable modules (though 2-3 modules are loaded with the shell startup by default), Invoke-WebRequest is contained within Microsoft.PowerShell.Utility for example.
- kemayo 10y agoLots of simple shell functionality is provided as builtins. See the bash manual for a list of builtins inherited from the Bourne Shell[1] and that are bash-specific[2]. Note that some of these are part of the POSIX standard, so there's not a huge amount of variance allowed between shells which are being compliant. Obviously, PowerShell doesn't adhere to this. [1] https://www.gnu.org/software/bash/manual/html_node/Bourne-Shell-Builtins.html#Bourne-Shell-Builtins https://www.gnu.org/software/bash/manual/html_node/Bourne-Sh... [2]: https://www.gnu.org/software/bash/manual/html_node/Bash-Builtins.html#Bash-Builtins https://www.gnu.org/software/bash/manual/html_node/Bash-Buil...