运行反应脚本启动后如何停止?



我用 npm 启动 在 package.json 中定义 start:

{
"name": "testreactapp",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^15.6.1",
"react-dom": "^15.6.1",
"react-scripts": "1.0.10"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
}

我现在想在不关闭终端的情况下停止它。我该怎么做?

试: npm 停止测试直截应用 但这会引发错误,指出它需要一个脚本

然后尝试: npm run stop with script "stop": "pkill --signal SIGINT testreactapp" 引发错误"pkill 未被识别为命令">

编辑

bash中的运行ps显示:

PID    PPID    PGID     WINPID   TTY         UID    STIME COMMAND
6652       1    6652       6652  ?         197612 19:52:49 /usr/bin/mintty
1092       1    1092       1092  ?         197612   Jul 25 /usr/bin/mintty
11092    6652   11092      10060  pty1      197612 19:52:49 /usr/bin/bash
13868    1092   13868        992  pty0      197612   Jul 25 /usr/bin/bash
11428   13868   11428      17340  pty0      197612 12:48:27 /usr/bin/ps
11672    1092    1092      11672  ?         197612   Jul 25 /usr/bin/mintty <defunct>

在那里看不到应用程序?

点击键盘快捷键以停止终端命令(通常是 Ctrl+C 或 Ctrl+Q(

或者,如果您没有对进程的输入访问权限,请识别其 PID 并杀死它:

在视窗上 :

C:>Taskkill /PID <PID> /F

在 Linux 上:

$>kill -SIGTERM <PID>

把它添加到你的包中.json:

"stop": "taskkill -F -IM node.exe"

点击Ctrl + C将在您提供答案后停止正在运行的应用程序,因为它要求Y;无需关闭终端。

我也有同样的问题。我用这段代码来阻止它

taskkill -F -IM node.exe

只需在终端中输入代码

要确保该过程完成,只需键入以下命令:

$ killall -9 node

将以"节点"的名称杀死所有进程。-9使用内核来终止进程,而不是进程本身。

请参阅手册页

我在 Mac 上遇到了同样的问题,终端以 VS 代码启动。

CTRL C 会终止节点服务器,但 vscode 进程之后仍会连接到端口,并防止在同一端口上重新启动。

以下解决方法在 Mac 上对我有用

NPX 终止端口 3000

您可以从另一个终端调用它,它应该会终止节点服务器和连接到端口的任何其他相关 vscode 进程,并允许您在同一端口上重新启动服务器。

您还可以在 package.json 中添加脚本:

"停止":"NPX 终止端口 3000">

然后调用纱线停止停止你的服务器

如果您使用的是 Git Bash,您可能会收到无效参数错误。您必须使用以下语法。

要检查要杀死哪个 PID,请执行以下操作:

netstat -aon

在本地地址下查找 127.0.0.1:3000并记下 PID

要终止进程,请执行以下操作:

taskkill -f //PID ####

其中 #### 是上面的 PID。

你可以试试ctrl+z
之后的类型npx kill-port <PORT>
通常在端口3000上开始反应,但你最好检查一下

只需使用Ctrl + c,它就会停止服务器,很简单。

  1. 打开任务管理器(任务栏 Righ单击/按Ctrl + Alt + Delete(

  2. 转到"进程"选项卡

  3. 查找节点.js:服务器端 JavaScript

  4. 结束任务。

逐步回答(仅限Windows;对不起!(...

步骤 1:使用端口查找进程(此处的示例将使用端口 3000(。

netstat -aon | findstr :3000

输出将如下所示:

TCP    0.0.0.0:3000           0.0.0.0:0              LISTENING       275368
TCP    127.0.0.1:3000         127.0.0.1:52462        ESTABLISHED     275368
TCP    127.0.0.1:52462        127.0.0.1:3000         ESTABLISHED     15760

步骤 2:确定进程 ID。

我们只想要以下任务:

  1. 是 TCP(第一列(,并且
  2. 显示端口 3000(第二列(,以及
  3. LISTENING(第四列(。

在上面的输出中,这是第 #1 行,即进程 ID 275368(最后一列(。

第 3 步:终止进程。

使用taskkillf(强制(标志,结束步骤 2 中的进程 ID:

taskkill -f -pid 275368

taskkill标志不区分大小写,可以用破折号或斜杠来衬托,所以这些都是等价的:taskkill -f -pid 275368taskkill -F /PID 275368taskkill /F /pid 275368等。

在macOS中工作,但无法ctrl + c

工作
  1. 在 VS 代码中打开终端

  2. 右键单击终端或单击右上角 zsh-appname

  3. 单击最后一个kill terminal

最新更新