Implementation of Conda's activate/deactivate functions in PowerShell. Works with Anaconda 4.1 and newer. Works on Windows, macOS, Linux. Works with PowerShell 2.0 and up.
Open a Powershell or Command Prompt session, and enter the following command:
conda install -n root -c pscondaenvs pscondaenvs
Done! Note, you may need to change the Powershell
RemoteSigned in order for this package to work.
If you want to install manually for some reason, copy
invoke_cmdscript.ps1 into your Anaconda\Scripts directory (Windows) or
deactivate.ps1 to anaconda/bin directory (macOS, Linux).
Simply use the
deactivate commands as normal:
PS C:\> activate TestEnv (TestEnv) PS C:\> deactivate
For fine control of activation of an individual environment,
activate.ps1 will execute both
.bat scripts in
etc\conda\activate.d\ in the target environment just as
activate.bat would do with
deactivate.ps1 exetutes sctipts in
For more help:
PS C:> help activate.ps1
Activate.ps1uses internal conda commands
activate.batdoes). Things may stop working when conda changes the semantics of those commands. Also, older versions of conda (probably) do not support those commands.
- The names of the scripts do not follow established PowerShell naming convention. Probably more appriopriate names for the sctipts would be
Disable-CondaEnv, or, even better:
Exit-CondaEnvironment(the verbs enable/disable are meant for lifecycle management). Long, but then again: New-Alias is your friend.
deactivatePowershell Aliases are automatically added when you first activate your environment. This is to override any activate/deactivate.bat or .activate/deactivate.sh files that appear in your individual environment's binary path, that would normally execute instead.
- Original Conda batch files.
- https://github.com/Wintellect/WintellectPowerShell A modified PS 2.0 compatible
Invoke-CmdScriptis used to maintain .bat backwards compatibility
- https://github.com/Liquidmantis/PSCondaEnvs (for older Anaconda versions, no support for multiple envs locations)