我正在学习angular 2,并且这是我第一次使用angular CLI项目创建沙箱项目。
我能够运行命令“ ng serve”,效果很好。我想阻止它运行,所以我运行了“ Control Z”。
当我再次尝试运行“ ng-serve”命令时,它提示我“端口4200已在使用中”。
我运行“ PS”以获取PID列表,并杀死了angular-cli的PID,然后再次运行“ ng-serve”,仍然给出了相同的端口使用错误。
我正在学习angular 2,并且这是我第一次使用angular CLI项目创建沙箱项目。
我能够运行命令“ ng serve”,效果很好。我想阻止它运行,所以我运行了“ Control Z”。
当我再次尝试运行“ ng-serve”命令时,它提示我“端口4200已在使用中”。
我运行“ PS”以获取PID列表,并杀死了angular-cli的PID,然后再次运行“ ng-serve”,仍然给出了相同的端口使用错误。
Answers:
这就是我用来终止4200端口上的进度的原因
对于linux用户:
sudo kill $(sudo lsof -t -i:4200)
您也可以尝试以下方法:
sudo kill `sudo lsof -t -i:4200`
对于Windows用户:
端口号4200已在使用中。以管理员身份打开cmd。在cmd中键入以下命令:
netstat -a -n -o
然后,右键单击终端,找到端口号为4200的端口,然后单击查找,在“ find what”中输入4200,然后单击“ find next”:假设您发现pid 18932使用了端口号4200。命令:
taskkill -f /pid 18932
对于UNIX:
alias ngf='kill -9 $(lsof -t -i:4200);ng serve'
现在,从项目文件夹的终端中运行ngf(而不是ng serve)。这将使用端口4200终止所有进程,并运行Angular项目。
ng serve
在其他目录上运行怎么办?这样杀死服务器然后在其他地方重新启动服务器没有意义,还是我丢失了某些东西?
--port <new_port>
^Z
在使用默认端口的现有角度实例上做了一个,愚蠢的我!
打开您的cmd.exe
as administrator
,
然后找到PID
的port 4200
netstat -ano | findstr :4200
在这里我有3 PID:
LISTENING
仅杀死端口4200(杀死红色PID):
taskkill /PID 15940 /F
注意:杀死绿色的仅会导致您的浏览器被强行关闭。
现在,您可以执行“ ng-serve”以在同一端口4200上启动角度应用程序
其他资料:
一线:在寻找一种优化方法之后,这是此答案的单线命令:(特别感谢:约瑟夫·阿尔西纳(Josep Alsina)提供了这些提示)
for /f "tokens=5" %a in ('netstat -ano ^| find "4200" ^| find "LISTENING"') do taskkill /f /pid %a
cmd
,没有Git Bash
。
在Mac OS X上,您需要以下命令:
sudo lsof -t -i tcp:4200 | xargs kill -9
请记住,您需要使用Command + C杀死Angular的Web服务器。
不是ctrl + Z,必须运行stop ctrl + C
使用以下命令杀死ng:
pkill -9 ng
现在,您可以设置--port 0
免费端口。
ng serve --port 0 // will get a free port for you
--open
标志,否则您将不知道从哪个端口启动。
对于Windows:
打开命令提示符并
类型: netstat -a -o -n
找到您要终止的进程的PID。
类型: taskkill /F /PID 16876
这个16876-是我要杀死的进程的PID-在这种情况下,进程是4200-检查附件。您可以提供任何端口号。
现在,键入:ng serve
在同一端口4200上启动您的角度应用程序
我正在共享这个,因为在我的mac上无法执行的两个命令没有完成这项工作:
sudo kill $(sudo lsof -t -i:4200)
sudo kill `sudo lsof -t -i:4200`
可以进行以下操作,但是如果您在Visual Code中使用集成终端,请尝试使用计算机终端并添加fowling命令:
lsof -t -i tcp:4200 | xargs kill -9
netstat -anp | grep ":4200"
这将告诉您谁拥有港口。
总之,有多种解决方案:1)通过使用另一个端口来定义端口号,
ng serve --open --port 4201
2)通过杀死进程
ctrl + c // for kill
Close all node terminal which is related for running the app.
3)类型
netstat -a -n -o
在命令提示符下,然后找到相关的端口PID并通过杀死它
taskkill /F /PID (pid number)
4)类型 netstat -ano|findstr :4200
接收包含端口号的外部地址PID,然后通过杀死它
taskkill /PID (pid number)/F
最简单的一行命令:
sudo fuser -k 4200/tcp
如果使用的是VSCode,则可以选择终止终端并添加新终端。关闭选项卡,然后打开一个新选项卡。它为我工作。
编辑:使用ctrl + c并按y。如果没有终止终端,则可以继续。如果要打开Visual Studio的新实例并运行其他应用程序,则可以使用ng serve --port 4401。
Ubuntu OS中的VScode终端使用以下命令杀死进程
lsof -t -i tcp:4200 | xargs kill -9
如果是Linux操作系统,则可以使用fuser -k 4200 / tcp
每当我不得不杀死端口时,我都面临着同样的问题。
我尝试了./node_modules/.bin/ng serve --proxy-config proxy.conf.json --host 0.0.0.0
代替而不是npm start
它的作品