问题标签 [io-redirection]

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 投票
5 回答
2715 浏览

unix - unix shell,使用管道子获取退出代码

假设我在 unix shell 中执行此操作

这会给我退出代码grep

但我怎样才能得到退出代码some-script.sh

编辑

假设管道操作是不可变的。即,我无法将其拆分并分别运行这两个命令

0 投票
5 回答
29979 浏览

perl - 如何将标准输出重定向到 Perl 中的文件?

我正在寻找使用 Perl 将标准输出重定向到文件的示例。我正在做一个相当简单的 fork/exec 工具,我想将孩子的输出重定向到文件而不是父母的标准输出。

是否有dup2()我应该使用的等价物?我好像找不到

0 投票
2 回答
2197 浏览

java - 使用 Runtime.getRuntime().exec() 重定向不起作用

我需要从程序执行命令。命令行没问题,我在终端试了下,在程序里不行。

我从我的代码中添加了一个副本:

该程序必须获取文件夹中所有文件的名称(文件名)并提取这些视频的元数据,将它们写入文件夹“元数据”中的 .json 文件中。
问题出在哪里?

0 投票
2 回答
1332 浏览

c++ - 将文件流重定向到内存流

我确实有一个程序(例如称为“a.exe”)从多个文件中读取其配置。我可以编写另一个程序来将“a.exe”的所有文件访问重定向到另一个流(例如控制台)吗?

我没有“a.exe”的代码,但是如果我得到a.exe的源代码,显然我可以更改所有文件访问。但是有没有可能通过非常“最小”的更改来覆盖所有文件访问?例如覆盖 file.open 函数或类似的东西?

0 投票
2 回答
1872 浏览

perl - Perl,重定向标准输出但保持父级

在 perl 中,在fork()ing 之后我可以将孩子的标准输出重定向到这样的文件

我想知道是否有一种“复制它”的方法,将标准输出保留在父标准输出上,但也复制到指定的文件。它应该以不需要任何缓冲的方式发生,并且用户将实时看到控制台输出。这有点像 unix tee。但理想情况下,该解决方案不会涉及任何第三方库。

0 投票
4 回答
281 浏览

c - 进程可以创建额外的 shell 可重定向文件描述符吗?

例如,进程“foo”是否可以写入文件描述符 3,在 bash shell 中可以这样做

如果是这样,您将如何编写它(用 C 语言)?

0 投票
2 回答
805 浏览

c++ - C++中的重定向

cout 是否写入给定文件?

如果没有,有没有办法在不将变量发送到 foo 的情况下做到这一点,比如new


更新

我不能使用使用类或使用全局的解决方案,所以请给我一些使用新的解决方案。还将 from main 传递给 foo

应该工作吗?

我正在尝试这样做,但它不起作用?我将流传递给 foo 所以它存在于 main 中,所以当 foo 完成时它不会结束。

0 投票
3 回答
8113 浏览

python - 使用来自 python 2.4 的输入重定向运行 shell 命令?

我想要实现的是启动以下 shell 命令:

在 python 2.4 脚本中,与以下内容没有什么不同:

这是由于使用了重定向符号(我相信)而导致的 - mysql 没有收到输入文件。

我也试过:

没有去那里以太

有人可以指定进行 shell 调用的语法,以便我可以输入文件重定向吗?

提前致谢。

0 投票
3 回答
513 浏览

android - Android:使用 i/o 重定向调用常规 Java 风格的程序

我有一个带有“public static void main”方法(java风格)的apk(或.class,无论如何),它可以做一些事情。编译和安装 apk 这可以正常工作(来自 eclipse)。

现在,我想从一个常规的 Android 应用程序调用该代码,同时将其 stdin/stdout 重定向到 Input-/Output-Stream 对象。这可能吗?如果是这样:如何?如果没有:是否有其他方式可以通过某种管道/io 重定向构造在后台运行活动?

谢谢。

0 投票
4 回答
1243 浏览

bash - 这些流重定向如何工作?

这个 perldoc 页面

  1. 一起捕获命令的 STDERR 和 STDOUT:

    /li>
  2. 要捕获命令的 STDOUT 但丢弃其 STDERR:

    /li>
  3. 要捕获命令的 STDERR 但丢弃其 STDOUT(此处排序很重要):

    /li>
  4. 交换命令的 STDOUT 和 STDERR 以捕获 STDERR 但将其 STDOUT 保留为旧的 STDERR:

    /li>

我不明白 3 和 4 是如何工作的,我也不太确定我对 1 和 2 的理解是否正确。以下是我的理解。请纠正我哪里错了。

我知道0和象征着1和。2STDINSTDOUTSTDERR

  1. 将 2 重定向到 1,以便它们现在都使用相同的流(&转义1以确保STDERR不会重定向到名为的文件1

  2. 将 2 (STDERR) 重定向到空流,使其被丢弃

  3. 我不明白这一点。难道不应该只是

    此外,如果目标是在 获取STDERR消息STDOUT,不会1>/dev/null将所有内容重定向到/dev/null?

  4. 这里发生了什么?什么是流3?它像一个临时变量吗?