''choco' command not recognized when run as administrator on Windows

I installed Chocolatey as per the instructions on the website (https://chocolatey.org/install).

The 'choco' command works fine when I run it normally on cmd but returns the following error when run as administrator:

C:\WINDOWS\system32>choco install -y wget 7zip.commandline
'choco' is not recognized as an internal or external command,
operable program or batch file.

The install choco install -y wget 7zip.commandline fails if not run as administrator.

How do I fix 'not recognized' error in admin cmd?



Solution 1:[1]

  1. First, ensure that you are using an administrative shell of command prompt(https://www.howtogeek.com/194041/how-to-open-the-command-prompt-as-administrator-in-windows-8.1/).
  2. Copy the below text into the command prompt.

    @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
    
  3. Then press enter key from the keyboard. After few seconds you get complete info about current installation.

  4. If you don't see any errors. Type choco or choco -? now.

Reference

Solution 2:[2]

First Open the Command prompt as administrator and then run -

@powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin

And then restart the Command prompt, now choco is successfully installed

Solution 3:[3]

The choco environment variable has been altered. I ran into a similar problem when I tried setting env variable for Java SDK, but I was quick to recognize it when I ran the commands presented to me in the documentation which completely overwrites my env Path variable.

If you are sure you've choco installed. Check your System variables and look for Path variable if it has some values like C:\ProgramData\chocolatey\choco.exe;C:\ProgramData\chocolatey\bin if not add it.

And you can save you time by installing it. Installing via cmd line

Powershell:

Copy and Paste the code below to your PowerShell

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

OR Window CMD.exe:

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

After installation: run choco you see the version of chocolatey installed. Mine

Chocolatey v0.10.14
Please run 'choco -?' or 'choco <command> -?' for help menu.

hopefully this help read more

Solution 4:[4]

You can follow the below mentioned steps to install Chocolatey:

  1. Start Powershell as Admin.
  2. Excecute the command: Get-ExecutionPolicy. The output should show: Restricted.
  3. If the output is Restricted, then execute the command: Set-ExecutionPolicy AllSigned.
  4. Then execute this command to install Chocolatey: Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')).
  5. You can verify the installation by executing the command: choco.

Solution 5:[5]

Open command prompt in administrator mode and run this command:

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command " [System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

Solution 6:[6]

Just correcting what @Krishnarjun Banoth has given in the answer:

powershell -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))"

You don't have to add the PATH variable because choco will automatically add itself to PATH.

Solution 7:[7]

Changing the Path entry from 'C:\ProgramData\chocolatey\bin' to 'C:\ProgramData\chocolatey' and rebooting Windows did the trick for me.

Solution 8:[8]

Run Powershell as administrator

Run Get-ExecutionPolicy. If it returns Restricted, then run Set-ExecutionPolicy AllSigned or Set-ExecutionPolicy Bypass -Scope Process.

Now run the following command:

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

Solution 9:[9]

I was able to get the installation to work using C:\ProgramData\chocolatey\bin\choco.exe install -y wget 7zip.commandline. I'm still wondering why the choco command isn't working when cmd is run as administrator. I would appreciate any help. Cheers!

Solution 10:[10]

Hi for installing choco on your windows system, follow these steps:

  • First open cmd as admistrator.
  • copy this command in the cmd (as administrator):
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe"
-NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object
System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))"
&& SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

This will download the required dependency for choco and install it in your windows system.

For cross check run the choco command, for ex:

choco install -y nodejs.install python2 jdk8

Solution 11:[11]

To install chocolatey yarn:

First of all

Download the installer This will give you a .msi file that when run will walk you through installing Yarn on Windows.

If you use the installer you will first need to install Node.js.

https://classic.yarnpkg.com/lang/en/docs/install/#windows-stable

And, then go for choco install

Powershell:

Copy and Paste the code below to your PowerShell

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

OR Window CMD.exe:

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

After installation: run choco you see the version of chocolatey installed.

choco -v

After that just do one more thing

in PowerShell or cmd just copy-paste the following command to install chocolatey yarn in your system

choco install yarn

Here your yarn has been installed, check your yarn version using the following command.

yarn -v

That's it!! :)

This will definitely work :)