![speeddial by uworks speeddial by uworks](https://i.ytimg.com/vi/LTv-fLkKkVA/maxresdefault.jpg)
Like git, the SpeedDial command delegates to subcommands based on its first argument. If anyone would like to suggest a better (and multi-user-friendly) alternative, please create an issue or send a pull request. When calling SpeedDial through the available shell functions, the target directory is read from the /tmp file and the appropriate cd command is executed directly within the terminal's process. SpeedDial works around this limitation by writing the target directory to a file in /tmp just before it's process exits. Once SpeedDial finishes execution, returning focus back to the main terminal's process, the current working directory will remain as it was prior to executing the SpeedDial command. Changing the current working directory from within SpeedDial only changes the directory of the child process SpeedDial is running within and only for the duration of the script's execution. There is an inherent issue trying to change the terminal's current working directory from within a child process. SpeedDial should not be run directly using the node package's bin/speed-dial binary. Technically you can interact with SpeedDial without issue using the provided speed-dial binary directly, however when calling speed-dial go no redirection will occur on exit of the script. These sd and s commands should be your sole method for interacting with SpeedDial. SpeedDial's init command sources a bash script from the package making a few commands to interact with SpeedDial available. Reload your terminal session once more so your terminal can source SpeedDial's functions file.~/.bash_profile or ~/.zsh_profile are good choices for bash and zsh users respectively
![speeddial by uworks speeddial by uworks](https://i.ytimg.com/vi/h3bxw-6g3nM/maxresdefault.jpg)
Specify the path to a file of your choice that your terminal sources.
![speeddial by uworks speeddial by uworks](https://i.ytimg.com/vi/NBJV_dl7YOs/hqdefault.jpg)
SpeedDial has so far only been tested on Mac OS. Node 0.6+ or greater is required to run SpeedDial. SpeedDial is a CLI bookmarking & shortcuts utility, allowing you to alias and index directory paths within 'entry groups', manage directory 'listings' (SpeedDial will list out the children of a 'listing' and ask which you'd like to make your new current working directory), and swap your current working directory quickly by targeting entries or listings.