问题标签 [control-c]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
645 浏览

macos - DTrace END 探针从不触发

我有一台 2009 年中期的 MacBook Pro 和一台新的 2012 MacBook Pro,我正在学习 DTrace(一个非常棒的工具)。当我在新的 2012 MBP 上计算聚合时,聚合不会打印出来。

在我的 2009 年中期 MBP 中,它显示如下:

2012 MBP 没有显示任何内容。

我在 BEING 和 END 探针中添加了一个 printf,以查看 END 探针是否会像这样触发:

在 2009 年中期的 MBP 上,两个探头都发射并打印了,而在 2012 MBP 上,只有 BEGIN 探头发射了。END 从未触发过。

两个 MBP 都运行 Lion 10.7.3。我不确定下一步该尝试什么。现在想到的唯一区别是我没有在 2012 MBP 上安装开发人员命令行工具。但这对我来说没有意义,而且是在黑暗中拍摄的。

任何帮助或想法将不胜感激。谢谢。

=============[已启用根帐户]====================

所以我启用了root帐户并重新运行了命令

没有成功,但如果我这样做

有用!

=============[ kill -s INT ]=============================

我做了更多的实验。如果我运行:

一切正常并显示输出。

如果我运行:

这也有效!

但是如果我在终端中使用 control-c,它不会显示输出。

control-c 和 kill -s INT 有什么区别?

0 投票
1 回答
831 浏览

javascript - 需要突出显示并将文本从谷歌文档查看器复制到剪贴板

我必须创建一个向用户显示文档的过程,用户可以突出显示文本并从文档的某些部分复制(并最终粘贴)文本。

我在 iframe 中使用谷歌文档查看器(因为我需要一个免费的通用文档查看器 - 尽管我对查看器的其他想法持开放态度)。谷歌文档查看器可以满足我的需要,但似乎我无权访问 iframe 的内部来获取突出显示的内容。

我查看了许多与在 javascript 中触发副本 (cntl-c) 相关的链接,但在此过程中没有任何确定的。

理想情况下,我希望在 iframe 之外单击一个按钮,单击该按钮会将用户在 google doc 查看器中所做的选择复制到剪贴板。

关于如何实现这一目标的任何建议?

0 投票
1 回答
3598 浏览

shell - 如何在没有 Ctrl-C 的情况下终止 hbase shell 中的扫描操作

有时当我运行scan '<tablename>. 我看到大量数据被打印出来,因为表格很大。我想终止打印数据的进程。除了 有什么办法Ctrl-C吗?因为Ctrl-C杀死了shell进程,我不想退出shell。

0 投票
0 回答
5468 浏览

c - ctrl-c 在我的 shell 中杀死我的后台进程

我正在尝试用 C 编写一个基本的 shell。我需要做的一件事是能够同时拥有后台和前台进程。Control-C 必须杀死前台进程(如果有的话),并且不能杀死任何后台进程。

我为 SIGINT 编写了一个信号处理程序,它杀死了前台进程。唯一的问题是,如果我有一个后台进程,它也会杀死它。据我了解,当按下 Control-C 时,SIGINT 会通过一个队列传递给不同的进程,如果有一个处理它,那么它就会停止。我的外壳应该正在处理它,所以它不应该被传递给后台进程,对吧?

这是我的代码:

当我运行前台进程时:

然后我可以按 contorl-c 它会退出。应该的。但是,如果我运行后台进程:

我得到了一个新的提示,就像我应该的那样,但是如果我按下 control-c,什么都不会发生。但是后台进程被杀死了。

我很想知道如何阻止后台进程被杀死。有任何想法吗?:)

0 投票
2 回答
532 浏览

c - 在虚拟 shell 中处理 CTRL-C

我正在编写一个虚拟 shell,当用户键入 ctrl-C 时它不应该终止,而应该只生成一个新的提示行。目前,当我键入 ctrl-C 时,我的 shell 不会终止,但它仍然不会打印新的提示行。你知道为什么会这样,我该如何解决这个问题?

我的代码如下:

0 投票
1 回答
2719 浏览

python - 将信号处理委托给python中的子进程

如何从 python 脚本运行命令并将信号委托给它Ctrl+C

我的意思是当我运行例如:

我想child_proc处理Ctrl+C

0 投票
1 回答
3814 浏览

windows-7 - 在 Windows 7 中,如何将 Ctrl-C 或 Ctrl-Break 发送到单独的进程

我们小组有每天运行的长期运行流程。这些流程通常在任何一天晚上 9 点开始,一直运行到第二天晚上 7 点。因此,它们通常每天运行 22 小时。它们由特定通用用户 ID 下的服务器上的计划任务启动,并且无论该用户 ID 是否登录,它们都会启动和运行。因此,它们是无窗口控制台可执行文件。

这些任务协调在大型服务器场上运行的计算。通常,这些控制任务每天 22 小时不间断地运行。但是,我们经常需要停止和重新启动这些进程。因为它们控制着在我们的服务器场上运行的大量任务,所以干净地关闭它们很重要,这样它们就可以停止和关闭所有服务器场进程。这让我想到了我们的问题。

控制过程已被编程为响应 ctrl-C 和 ctrl-break 信号。当进程在控制台中手动启动时,这可以正常工作,我们可以访问控制台并可以在控制台窗口中“键入”ctrl-c 或 ctrl-break。但是,如前所述,这些进程通常作为无窗口计划任务运行。因此,我们不能在不存在的控制台窗口中“键入”任何内容。因为它们是在没有登录进程的情况下执行的控制台进程,所以它们还必须能够在完全无窗口的环境中执行。那么,我们如何设置进程来监听关闭信号呢?

虽然该进程确实在侦听 ctrl-C 和 ctrl-break 信号,但我看不出有办法将该信号发送给进程。这似乎是 Windows 中的一个基本问题,还是我错了?我知道 SendSignal.exe,但到目前为止一直无法让它工作。它失败如下:

在没有 -F 的情况下尝试“taskkill”会导致:

所有其他“终止”功能会立即终止进程,而不是发送信号。

一种可能的解决方案是基于文件监视的解决方案:为特定文件的某些修改创建监视。但这是一个 hack,我们更愿意用适当的信号来做。有没有人解决过这个问题?它似乎是一个非常基本的功能,在 Unix 环境中实现它肯定是微不足道的。微软肯定提供了一些机制来允许干净关闭无窗口的可执行文件吗?

我知道下面的线程,其问题实际上是相同的(除了说明为什么需要答案,即为什么需要能够为无窗口、无控制台进程执行此操作),但没有答案“使用SendSignal”有例外,正如我所说,它对我们不起作用:

我可以向 Windows 上的应用程序发送 ctrl-C (SIGINT) 吗?

还有其他类似的问题,但目前还没有答案。

任何帮助表示赞赏。

0 投票
2 回答
246 浏览

c - 为什么当我使用“control-c”关闭发送端上的套接字时,接收端上的套接字继续接收''

我是套接字编程的新手,我知道使用“control-c”关闭套接字是一个坏习惯,但是为什么接收端的套接字在我使用“control-c”关闭发送过程后不断接收'' ? 在“control-c”退出进程后,发送端的套接字不应该关闭吗?谢谢!

0 投票
1 回答
1374 浏览

sockets - Ctrl+C 键在 TCP 连接中的行为如何

我正在研究网络,特别是 tcp 连接,我想知道在您使用 tcp 连接远程连接到服务器并发送命令行以执行某些操作的情况下,他们如何处理发送ctrl+c信号?它是否发送了一个在数据部分描述+命中
的普通 tcp 包? 还是它发送一个已打开标志或标志以切断或关闭连接的包?ctrlc
RSTFIN

0 投票
1 回答
142 浏览

windows - 如何仅终止内部批处理作业

假设有一些 .bat 文件需要在 .cmd 批处理脚本中运行。这个内部 .bat 文件在本地主机上有一系列用户交互,并且只能使用 ctrl+c 结束。

问题是:有没有办法让外部批处理脚本在内部脚本终止后恢复?还是按 ctrl+c 就完事了?

我尝试为内部脚本提供不同的出路,结果却被告知我不允许更改该文件。我也做了相当多的研究,但还没有找到解决方案。如果我忽略了什么,请原谅我!我想避免弹出两个窗口或无关的终止消息。