https://github.com/witchard/doppelganger
Save and load your shell environment to create doppelganger shells!
https://github.com/witchard/doppelganger
Last synced: 20 days ago
JSON representation
Save and load your shell environment to create doppelganger shells!
- Host: GitHub
- URL: https://github.com/witchard/doppelganger
- Owner: witchard
- License: mit
- Created: 2021-07-17T14:04:08.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-07-18T21:12:42.000Z (over 4 years ago)
- Last Synced: 2025-02-01T11:11:06.530Z (10 months ago)
- Language: Shell
- Size: 115 KB
- Stars: 15
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-cli-apps-in-a-csv - doppelganger - Save and load your shell environment to create doppelganger shells! (<a name="file-handling"></a>File and file system handling)
README
# doppelganger
[](https://github.com/witchard/doppelganger/actions/workflows/test.yml)
Save and load your shell environment to create doppelganger shells!
Ever been in one shell, in a specific folder, with some environment active, and then wanted to be in the same place in another? Then doppelganger is for you! The `dgs` command will save the current shell setup (functions, local variables and environment variables), and then `dgl` can be used to load them into a different shell. Your original shell can also still be active.

Please note, this is early software and has had minimal testing with zsh and bash on a mac. Issues and pull requests welcome!
## Installation
Simply `git clone` this repository somewhere, let's say you put it in `$HOME/doppelganger`. Then simply add `source $HOME/doppelganger/doppelganger.sh` to your `.bashrc` or `.zshrc` file.
## Usage
The following commands will be available when doppelganger is installed:
* `dgs` - Save current shell environment
* `dgl` - Load last saved shell environment
* `dgc` - Cleanup last saved environment
* `dgu` - Update to latest version