After installing angular-cli with the help of this https://github.com/angular/angular-cli/issues/389#issuecomment-213420501 i installed Angular-cli successfully.
After that i tried a ng
command ng --help
what gave me the following message. -bash: ng: command not found
Running npm list -g --depth=0
shows me that angular-cli is installed.
ReinosMac:~ reinos$ npm list -g --depth=0
/Users/reinos/.npm/lib
├── [email protected]
├── [email protected]
└── [email protected]
Running on a Macos.
Am i missing something?
seems to fixed when i add a alias in my bash_profile
alias ng="/Users/reinos/.npm/lib/node_modules/angular-cli/bin/ng"
but that should not be the way to do, right...?
Yeah, you shouldn't need to do that really... how odd. That seems like an npm issue though, where npm isn't setting the path correctly or something.
npm install npm@latest -g
should solve the npm-cli problem "NO SUDO"
Removing NODE and using NVM instead fixed a lot of issues.
nvm install stable
npm install -g angular-cli
Come to think of it, I'm using NVM myself. Good advice @reinos.
just missing npm-cli
├── npm@***
in your prefix .npm/lib
list
Even when I type ng --help same issue ng: command not found, is there any other alternate rather using nvm because I would like to use npm. I tried to correct the path by adding alias in my .profile but already proxy settings are there, so how can I add new path using alias ng="Users/xxxx/npm/lib/node_modules/angular-cli/bin/ng"
Adding alias worked for me but it's weird, this issue.
@info007 you shouldn't have to use nvm, no. Don't quite get why the ng
command isn't being copied over to the global npm commands overall, it's not special or different from other global npm commands in any way.
Apparently this is still an issue. Installed angular-cli today, read all the suggestions here. Nothing works. Had to manually add a symlink.
I got this error after I change my node from my initial install. I reinstalled using -g works well for me.
$npm install -g angular-cli
I am using nvm for handling node versions.
I'm using nvm on an ubuntu machine, i solved by using alias too, like this alias ng="/root/.nvm/versions/node/v6.3.1/lib/node_modules/angular-cli/bin/ng"
hi @Zaggen in windows how to do ? thank u
same problem for me: ng: command not found
I am on apple osX 10.9.5
$ node --version
v6.5.0
$ npm --version
3.10.3
@mcferren It is solved by adding the address of the module installation at _* PATH*_ computer
in my case
C:\Users\hmuschett\AppData\Roaming\npm
or
C:\Users\local\npm-local\npm-global
@hmuschett can you please expand on your suggestion? I am unclear when/where I should add the address (during installation? before ng terminal command? ). Could you please provide me the steps from scratch in order to install angular cli and then use all of its ng terminal commands? Many thanks in advance
@mcferren see https://github.com/npm/npm/issues/13828 tienes buscar en tu ordenador la ruta en donde npm instala los paquetes globales y esa ruta añadirla a la variable "PATH" de tu sistema operativo para que este recocnosca los comandos instalados
se puede compartir el command teminal para hacer eso? muchas gracias para la ayuda
@mcferren i do not understand you, you have to restart the pc to see the changes
Hi @hmuschett, on windows 10 it worked right out of the box, so i can't help with that, i only had issues with ubuntu.
Btw, what you suggested to @mcferren is regarding windows installation, but he stated that he is using mac. @mcferren OsX is pretty much a flavor of linux, so i have no idea if it'll work but you could try and copy+paste and run the command i placed for ubuntu on my last comment and check if it works, if not then i have no idea how to help.
Why is this marked as closed? This issue happened for me today on an Ubuntu server using Node (not NVM)
There was no 'lib' folder in /home/[user]/.npm/lib
for me to symlink
I ended up removing node and installing nvm, but that can't be an acceptable solution, right?
@AlexReff -- is your PATH as noted in the referenced NPM 13828 issue correct?
That topic is specific to Windows. This was not on a Windows platform.
Still occuring with node v5.6.0 npm v3.6.0. Using alias fix.
I changed the alias, now I get this error, now how do I undo the alias?
-bash: /root/.nvm/versions/node/v6.3.1/lib/node_modules/angular-cli/bin/ng: No such file or directory
and Mac Users do not try to change the alias, it wont solve the problem
I know it's frustrating to hear, but there isn't much that we can do here on this repo. If after global install the ng
isn't available, it means that either the install failed or that your npm
is broken/misconfigured/having problems. Those kind of issues should be filed against https://github.com/npm/npm
Same problem here using Windows 10 and actual installer.
Same problem with it. npm command is working fine, so the problem is with angular-cli as ng command is ot working
Same problem here running Windows 10 x64 / NodeJS 6.9.1 / npm 3.10.9: After installation of Angular CLI via npm, the 'ng' command cannot be found.
Uninstalled npm with npm uninstall -g npm
Uninstalled NodeJS via control panel / programs and features
Downloaded and ran 'old' NodeJS installer release 6.5.0 from https://nodejs.org/download/release/v6.5.0/ (node-v6.5.0-x64.msi).
After NodeJS 6.5.0 installation completed, open powershell and npm install -g angular-cli
Grab quick coffee
After installation completed, ng worked OK.
HTH
Thank you. This solution works for me
Hi,
I was also coming across this issue on the MacOS Siera (10.12.2), and I managed to fix the issue following the next steps (I provided the whole steps to install the angular-cli, including the way to add the correct link into ~/.bash_profile
Prerequisites
the following versions need to be installed (https://www.npmjs.com/package/angular-cli#prerequisites )
Because I installed the node and npm using the brew package manager I would go with it for updating the node and npm to the required versions
$ brew update && brew upgrade node && npm install -g npm
Check the versions with
$ node --version
$ npm --version
Installation
$ npm install -g angular-cli
Try to see if the ng is successfully installed on your machine with:
$ ng --version
In same cases (this was also my cases) the packages are successfully installed but the ng command is not seen in command prompt (See the filed issue https://github.com/angular/angular-cli/issues/503 ). If this is the case follow the following instructions:
See where are the angular-cli installations
$ npm link angular-cli
On my machine the command returns
/Users/antonelpazargic/.npm-packages/lib/node_modules/angular-cli/node_modules/angular-cli -> /Users/antonelpazargic/.npm-packages/lib/node_modules/angular-cli
Edit the ~/bash_profile in order to include a link to one of the link command return paths + /bin/ng
For me:
alias ng="/Users/xxxxxxxx/.npm-packages/lib/node_modules/angular-cli/bin/ng"
$ . ~/bash_profile
Test the installation with
$ ng --version
If your IDE is like mine (Cloud 9) the node version default may be something like 4.5.1. Do an upgrade to at least version 6.5.0 as shown above. In addition your IDE may shut your work space session down after being idle. That may reset everything back to the default node version. You can use this command to set the current session to the node version you need.
$ nvm use 6.5.0
This worked for me and 'ng' commands were back and life was good again.
With the latest @angular/cli package (prev called angilar-cli and renamed @angular/cli)
I think nvm is a good workaround, but you just have to add this line to your bash-profile:
open ~/.bash_profile
alias ng="/Users/xxxxx/.npm-packages/lib/node_modules/@angular/cli/bin/ng"
open ~/.zshrc
alias ng="~/lib/node_modules/@angular/cli/bin/ng"
Update.....
I started a new MEAN stack node.js app on Cloud 9 (Ubuntu) and when using node 6.5.0 got a message that I should convert to 6.10. Used 6.10.1 and that would not recognize 'ng' commands. Changing this 'bash_profile' may or may not be possible developing from an IDE tool where you don't own the file. So I went back to 6.5.0 and it worked fine. I don't understand why the new 6.10.1 version would cause the 'ng' script file to not be found. I'm sticking with 6.5.0 for now warning or not at least it works.
Also posible solution is to reexport (or to verify) path to your .../usr/bin:
export PATH=$HOME/bin:$PATH
Are you talking about setting this PATH inside of my application?
Not om my machine?
I use a cloud service to create my code which sits on Ubuntu.
Where would I set the PATH?
In which project file?
B
I was talking about bin folder which contains refs on cli(s).
Being in the Home directory, simply running:
alias ng="npm/lib/node_modules/angular-cli/bin/ng"
In terminal did fix the issue
I was running node v4.5.0. Updating to v8.1.1 fixed the issue for me.
Also posible solution is to reexport (or to verify) path to your .../usr/bin:
export PATH=$HOME/bin:$PATH
for some reason my path was no longer compatible with everything I was exporting in my bash profile,
so type "echo $PATH" and check your path, if npm/bin isnt there add it again through the bash_profile.
At last find the solution for ng command is not working issue ,Find the solution below http://itechiesol.blogspot.com/2017/07/angular-cli-ng-command-is-not-working.html
@maddymaster alias worked for me in mac, not sure why it did not work for you or if you are still having the issues then you can check if your path is correct.
I was at the following versions and unable to get it to work:
node --version
v7.9.0
npm --version
4.2.0
After adding the path C:\Users\YourName\AppData\Roaming\npm
to my registry I am up and running:
function Set-Path{
<#
.Synopsis
Add path to $env:Path permanantly
.EXAMPLE
Set-Path -pathToAdd 'C:\Program Files\Git\usr\bin' -Verbose
#>
[CmdletBinding()]
param(
[Parameter(Mandatory=$true)]
[string]$pathToAdd,
$envBackup = 'c:\temp\envPathBackup.txt'
)
$oldPath = (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name PATH).path
$oldPath | Out-File $envBackup -Append
$newPath = $oldPath + ';' + $pathToAdd
Set-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name PATH -Value $newPath
(Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name PATH).path
Write-Host "Old path backed up at" $envBackup -ForegroundColor Green
}
Set-Path -pathToAdd 'C:\Users\YourName\AppData\Roaming\npm'
-bash: ng: command not found
MacBook-Air-de-xxxxxxxx:~ xxxxxxxx$ npm -v
5.3.0
MacBook-Air-de-xxxxxxxx:~ xxxxxxxx$ ionic -v
3.8.1
MacBook-Air-de-xxxxxxxx:~ xxxxxxxx$ ionic info
[WARN] You are not in an Ionic project directory. Project context may be
missing.
cli packages: (/usr/local/lib/node_modules)
@ionic/cli-utils : 1.8.1
ionic (Ionic CLI) : 3.8.1
System:
Node : v6.11.2
npm : 5.3.0
OS : macOS Sierra
MacBook-Air-de-xxxxxxxx:~ xxxxxxxx$ ng -v
-bash: ng: command not found
MacBook-Air-de-xxxxxxxx:~ xxxxxxxx$
" Ayudaaaa"
I have tried all sorts of things, but this did it.
npm uninstall -g angular-cli
npm cache clean
npm install -g angular-cli
Cheers.
angular cli is not work how to fix the error
Mg++ 1.5beta1 (formerly MicroGnuEmacs Adv.)
this error throw in my terminal
I'm learning Angular on a fresh Windows 7 install and went through the instructions and also got the ng not found error in git bash (mingw32): https://angular.io/guide/quickstart Step 2
SYSTEM@Dave-E6540 MINGW32 ~
$ ng new my-app
bash: ng: command not found
I followed instructions elsewhere to run some commands to determine the path I need to add but it was already added to the Windows Environment Variables for User (since I only installed it for me), and adding it to the System PATH also had no effect (see Start > right-click Computer > Properties > Advanced system settings > Advanced tab > Environment Variables button).
SYSTEM@Dave-E6540 MINGW32 ~
$ npm list -g --depth=0
C:\Users\Dave\AppData\Roamingnpm
`-- @angular/[email protected]
SYSTEM@Dave-E6540 MINGW32 ~
$ npm config get prefix
C:\Users\Dave\AppData\Roamingnpm
The only thing that worked was adding the path in git bash as:
export PATH=$PATH:/c/Users/Dave/AppData/Roaming/npm
Not sure if I'll have to re-add it every session or what the permanent solution is, but the Node install should be able to do this already. Wasn't expecting to hit a roadblock so early, maybe the developer needs to double-check this and reconfigure the install to set the path correctly or if they're not able to do that at least mention the fix for it during the install or documentation.
For me, it is a problem of adding a Path in to bash_profile for Mac (like global variable in the system):
Step 1: Find where your angular-cli is installed. You can find the path in terminal after you run npm install -g @angular-cli
Step 2:Get the path, for example, "/usr/local/lib/node_modules/lib/node_modules/@angular/cli/bin", I know it is a bit wired..
Step 3: Open your .bash_profile: vi ~/.bash_profile
Step 4: Add the path in step 2 in bash_profile like this: export PATH=/usr/local/lib/node_modules/lib/node_modules/@angular/cli/bin:$PATH
Step 5: Save and quit your vi editor by 'wq'. In the end, you need to source ~/.bash_profile
to make your changes work.
After that, you may need to close and reopen your terminal window to let it work. It works for me, hope it also works for you.
I'm guessing the only permanent fix (at least initially) is to install Node for ALL users on Windows (not sure how that's different than System PATH though), but I'd rather not do that. I'll look around for other permanent fixes, maybe there's some special place the Node install sets a path during an ALL users install, but I'll have to dig around for it if nobody knows.
Maybe the issue is just that Angular is checking the wrong PATH place... I don't fully blame the developers for missing something with Windows as it appears overly-complicated to me, but the instructions ultimately should work out of the box.
On macOS 10.13 (High Sierra) the easiest way to get angular-cli is via brew (Homebrew): http://brewformulas.org/AngularCli
Didn't give me any troubles at all.
Get DISTINCT product name with their respective counts from the below data using array concepts:
{{"id":"7","productdetails":"K26-12|K37-15"},{"id":"27","productdetails":"K26-13"}, {"id":"11","productdetails":"K37-15"},{"id":"17","productdetails":"K25-7|K37-2"}}
OUTPUT:
K25 - 7
K26 - 25
K37 - 32
How to get this output using PHP
Have the same problem but when set the system PATH it resolved my issue.
npm link @angular/cli
fixed this for me.
IT WORKED AFTER DOING THIS : npm install npm@latest -g. TRY THIS
Ng not found issue
Finally what a big relief ... different approach helped me to sort out ng issue in my Mac Pro.
i searched for ng in mac and found that it is available under /node_modules/.bin so i have set the path and created Alias in my .bash_profile. and ng started throwing some permission error when i ran
ng new MyDummyproject and warning as well..
node -v
v8.9.4
npm -v
5.6.0
sh-3.2# open -t .bash_profile
export PATH=/node_modules/.bin:$PATH
alias ng="/node_modules/.bin/ng"
Warning : As a forewarning, we are moving the CLI npm package to "@angular/cli" with the next release,
which will only support Node 6.9 and greater. This package will be officially deprecated
shortly after.
To disable this warning use "ng set --global warnings.packageDeprecation=false".
Permission error : Look like i need create a full permission for teh folder where i want to i run and create a new project "ng new MYprojects"
Cheers,
using npm start instead of ng serve works. It intitates ng serve.
Windows users, add %APPDATA%/npm
to the Path
variable and relaunch your terminal.
If anyone is on a mac simply type this in terminal and hit enter.
export PATH="$HOME/.npm-packages/bin:$PATH"
This finally worked for me:
alias ng="/Users/MY_USER_NAME/.npm-global/lib/node_modules/@angular/cli/bin/ng"
seems to fixed when i add a alias in my bash_profile
alias ng="/Users/reinos/.npm/lib/node_modules/angular-cli/bin/ng"
but that should not be the way to do, right...?
After trying it does not work, I tried another way and it add the line
alias ng="~/npm-global/bin/ng"
npm link @angular/cli
was enough
ng doesn't seem to be recognized if installed locally but not globally. However, if you run ng through npm it works. Why is that the case? In most cases, it doesn't hurt to install globally, however, when I set up a build pipeline, I have to install angular/cli globally first and then add an npm install step. That ends up installing angular/cli twice since most projects also have a dependency on angular/cli. The best solution around that is to avoid ng commands and run everything through npm scripts. However, we shouldn't have to be limited to invoking ng that way.
Wow that was a wasted afternoon. my main problem was that once I closed the terminal and opened a new one - it did not recognise the ng
command any more. the following code, suggested above, solved my problem:
Removing NODE and using NVM instead fixed a lot of issues.
removing Node from your system
install NVM from here https://github.com/creationix/nvm
Install Node via NVM: nvm install stable
run npm install -g @angular/cli
as suggetsted above worked for me.
I started facing this issue when I upgraded node to v10.15.0 using nvm. I tried to uninstall/re-install angular/cli, also tried many above solutions but it did not work. While installing angular-cli it was always making link to v8.9.4 (I would see v8.9.4 getting added inside nvm automatically). Finally I removed all node versions from nvm, installed node v8.9.4 and then installed angular-cli. This time it worked properly.
fixed this issue by using the aliasing others where talking about. Though it was coming up in the global npm installs, it seems to somehow have ended up in a different directory from the others.
I added the following command (on windows) and it worked for me.
alias ng="c:/Users/andre/.global-modules/node_modules/@angular/cli/bin/ng"
I solved my problem doing this..
npm install -g @angular/cli --latest
and everything working great now.
I solved it this way here are the steps, https://stackoverflow.com/questions/37227794/ng-command-not-found-while-creating-new-project-using-angular-cli/55179821#55179821
I had to uninstall and reinstall node.js, then it worked.
For me @NatasaPeic solution reinstalling angular-cli worked.
npm install -g angular-cli (seems deprecated)
I have got the solution by doing this
npm install -g @angular/cli
I started experiencing this about a month ago. I had created a project and then one day it just stopped working. So I looked into my situation.
OS: Windows 10 - x64 Enterprise 10.0.1622
$ npm -g list --depth=0
C:\Users\bryan.wood\AppData\Roaming\npm
+-- @angular/[email protected]
`-- [email protected]
I tried adding my npm folder to the Environment Path variable, but that actually made things worse. It broke NPM itself!
I decided to look into why that was, starting with the C:/Users
folder. Turns out the IT department doesn't remove other users from the machines it distributes. I went back to the Environment Variables and started looking around. When I added my path variable it was to the User EV PATH
variable. When I opened the System EV Path
variable I noticed another NPM path!
Turns out a previous user of my machine had installed NodeJS/NPM global for all users. This did not come up in the installer for NodeJS when I apparently did the same thing. And it looks to have used that users global NPM path and did not install one for me.
My Solution
You can add the path manually or install nodejs again and make sure to select "for me only" and it should install your NPM path in the User EV PATH variable.
This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.
Read more about our automatic conversation locking policy.
_This action has been performed automatically by a bot._
Most helpful comment
Removing NODE and using NVM instead fixed a lot of issues.
nvm install stable
npm install -g angular-cli