问题标签 [dup]

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 投票
3 回答
12619 浏览

python - Python:fork、pipe 和 exec

我想在 python 应用程序中执行一个程序,它会在后台运行,但最终会到前台。

GUI 用于与之交互。但控制是通过标准输入和标准输出上的控制台提供的。我希望能够使用我的应用程序的 GUI 来控制它,所以我的第一个想法是:

  • 在父级、dup2 标准输入和标准输出中,以便访问它们
  • 执行孩子

这在python中很容易实现吗?如何实现?有没有其他方法可以实现我想要的,那会是什么?

0 投票
2 回答
1858 浏览

ruby - 如何在 ruby​​19 中替换 STDIN、STDOUT、STDERR

在 ruby​​18 中,我有时会执行以下操作来获得完全控制的子进程:

这在 ruby​​19 中不起作用。STDIN、STDOUT、STDERR 的 close 方法不会关闭 ruby​​19 中的底层文件描述符。我如何在 ruby​​19 中做到这一点。

0 投票
1 回答
1015 浏览

c++ - windows8 - _dup,_dup2

我使用 win8 Consumer preview build 8250 执行程序,在 win7 上运行正常 该程序使用以下宏/函数:

该程序执行以下操作:

每次我运行它时,它都会打印到文件 tmp 随机数的正确“重定向 j”打印:在它之后,对于剩余的执行,文件是空的。(f指针在acquireOutputStream中永远不会为NULL)“test j”总是打印正确。可能是什么问题?这是win 8上的一个已知问题吗?

0 投票
6 回答
92192 浏览

ruby - Ruby 的 dup 和 clone 方法有什么区别?

Ruby 文档dup说:

通常,clone并且dup在后代类中可能具有不同的语义。Whileclone用于复制对象,包括其内部状态,dup通常使用后代对象的类来创建新实例。

但是当我做一些测试时,我发现它们实际上是相同的:

那么这两种方法有什么区别呢?

0 投票
3 回答
1521 浏览

c - 保存/复制文件指针/描述符

我有一个要求,其中有一个全局 FILE指针/描述符。其中一个函数将从该指针/描述符中读取。与指针/描述符相关的内部指针FILE前进。此函数返回后,我想从相同的FILE指针/描述符以及与另一个函数读取的相同数据中读取。

但是我无法读取相同的确切数据,因为内部指针已经前进。复制描述符不起作用,因为复制镜像原始。在读取之前保存FILE指针也不起作用,因为它是一个指针,并且将再次开始引用同一事物。

一种替代方法是使用fgetpos()before read 和 use fsetpos()before next read 保存文件位置。

但这适用于文件指针而不是描述符。

使用普通指针非常容易。FILE但是指针会变得很困难。

是否有任何其他非笨拙的方法来实现这一目标?

0 投票
4 回答
28866 浏览

c - 如何将 system() 的输出重定向到文件?

在这个C节目 中

我正在尝试将system()的输出重定向到一个文件,因为我使用了dup2但它不起作用。

这段代码有什么问题
并且,请告诉我是否有更好的方法来做到这一点?(不在>终端使用)

0 投票
2 回答
1916 浏览

ruby-on-rails - 使用关联和回形针附件复制 rails 对象

我有一个有几个关联的对象。其中一些关联对象具有存储在 S3 中的回形针附件。如果我复制对象和关联,它可以正常工作,但附件不会被复制。

这在这里工作而无需获取图像:

我试图得到这样的图像链接:

但后来我收到错误“无法将 nil 转换为字符串”,可能是因为并非所有图像都已设置。

0 投票
1 回答
531 浏览

perl - 从 perl 管道运行“less”

我正在尝试从 Perl 设置任意管道,其方式与 shell 可能相同。

这具有预期的效果,就像“echo foo | sed s/oo/ar/”:

但是,当我将第二个参数设为“less”时,我的终端会闪烁,并且在寻呼机中看不到输出。除了短暂的闪光之外,根本没有减少跑步的迹象。

现在我根本没有得到的是以下行为确实像“echo foo | less”:

但我根本不明白对 pipe() 的调用在做什么。第一个参数应该是“读者”,第二个参数应该是“作者”。STDIN 如何成为“作家”?

我对这一切感到非常困惑,并认为我可能遗漏或忘记了底层 Unix API 的一些基本内容。

0 投票
2 回答
3836 浏览

ruby - 什么时候使用 dup,什么时候在 Ruby 中使用 clone?

Ruby 的 dup 和 clone 方法有什么区别?描述 和 的行为dup差异clone。但是我应该什么时候使用dup,什么时候应该使用clone呢?

来自实际项目的示例讨论了为什么他们使用 dup 而不是 clone,反之亦然,对于这个问题来说是理想的。

或者,解释为什么存在两种不同的方法会有所帮助。这可能是指来自 Ruby 的创建者的陈述,或者是对影响 Ruby 的语言dup等方法的检查。clone

0 投票
1 回答
2716 浏览

ruby - 在 Ruby 类上定义哪种方法来为其实例提供 dup / clone?

我有一个Pointer具有单个属性的类:contents,它指向类的一个对象MyObject

我希望我Pointer能够复制自己。我知道该#dup方法是默认定义的,而#clone方法应该被覆盖以便能够进行深层复制。但在这里,副本不必太深。所以,我遇到的第一个难题是,我是否应该重写#dup方法,因为我真的不想复制 my 的附加状态Pointer,只需创建一个指向同一个MyObject实例的新状态?或者我应该避免 overridine #dup,因为我不是“应该”并#clone用一种制作浅拷贝的方法覆盖?

我欢迎对上述内容发表评论,但假设我会选择覆盖#dup. 我可以这样做:

但在网上,我读到类似“ dup方法将调用初始化复制方法”之类的内容。此外,这个人写了关于#initialize_clone,#initialize_dup#initialize_copyRuby 的文章。这让我想知道,最好的做法可能是这样的吗?

还是像这样?

还是我应该忘记为迷惑初学者而编写的在线咆哮而无忧无虑地去压倒一切#dup

另外,我知道我可以在#dup不定义任何 custom的情况下直接调用#dup,但是如果我想定义#dup不同的行为怎么办?

此外,同样的问题适用于#clone- 我应该尝试定义#initialize_clone还是只是#clone