问题标签 [tee]

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 回答
28499 浏览

bash - 管道输出到两个不同的命令

可能重复:
osx/linux:管道进入两个进程?

有没有办法将一个命令的输出通过管道传输到另外两个命令的输入中,同时运行它们?

像这样的东西:

我想这样做的原因是我有一个程序,它从 USB SDR 设备接收 FM 无线电信号,并将音频输出为原始 PCM 数据(如 .wav 文件,但没有标题。)因为信号不是音乐,但 POCSAG 寻呼机数据,我需要将其传送到解码器程序以恢复寻呼机文本。但是我也想听信号,所以我知道是否有任何数据进入。(否则我无法判断解码器是否损坏或没有数据正在广播。)除了将数据传输到寻呼机解码器之外,我还需要将相同的数据传输到play命令。

目前我只知道如何做一个 - 要么将其传送到解码器并静默读取数据,要么将其传送到play并听到它而没有看到任何解码的文本。

如何将相同的数据传送到两个命令,以便我可以阅读文本并听到音频?

我不能使用tee,因为它只会将重复的数据写入文件,但我需要实时处理数据。

0 投票
1 回答
7188 浏览

ffmpeg - GStreamer Tee(多路复用器)

我正在尝试将视频流(来自我的网络摄像头)存储到 MKV 和 FLV 文件中。这意味着我必须在 h264 编码之后拆分视频和音频管道,并使用不同的复用器复用每个路径。

这就是我想象的应该如何工作:

这个假设正确吗?所有的队列都在正确的地方吗?像这样的 GStreamer 命令会是什么样子?我在“三通”的概念上遇到了特别麻烦。如何/在何处在命令中启动它们以及如何操作不同的 Tee-Path。我在 GStreamer 文档中查找了“Tee”,但仍然无法应用它们。

提前致谢!

编辑:好的,多亏了 mreithub,我让它为视频工作。这是命令现在的样子:

这是我让音频运行的尝试:

这不起作用(命令执行但立即停止 - 没有错误消息)。但我也无法确定放置音频编码的位置。在我尝试的解决方案中,我对每个 Tee-Pipeline 中的音频进行编码(对吗?)。但我只想对音频进行一次编码,然后相应地在两个管道路径中将其混合。

这是另一个尝试:在音频编码之后,我使用 Tee 拆分管道并将其分配给 mkvmuxer 和 flvmuxer:

但是有了这个,我收到以下错误消息:

谢谢!

0 投票
1 回答
103 浏览

bash - tee 没有把输出放到文件中

我试图使用 php 文件来运行测试并获得结果。PHP中的内容如下所示:

bash 文件中的内容是启动硒测试。但结果是我在页面上完成测试后得到了测试结果。但是,在应有的位置找不到所需的文件。我现在也在起诉系统。有什么方法可以使寻呼机实时输出?

0 投票
1 回答
779 浏览

bash - Bash - 将 stdout 重定向到日志并使用 stderr 进行屏幕仅用于日志

我想做以下事情;

  1. 将 stdout 的副本重定向到日志文件并将 stdout 保留在屏幕上。
  2. 将 stderr 重定向到相同的日志文件,并且不显示在屏幕上。

没有标准输出到屏幕的代码

日志

第一个问题是缓冲,我试图用 sed '-u' 来否定无缓冲。

带有标准输出到屏幕的代码

结果屏幕挂起(必须按Ctrl-C)并且日志仍然缓冲。建议?

0 投票
1 回答
159 浏览

shell - 使用 DOS,Brian Friesen 的 Tee32 3.2,捕获返回码

我正在使用管道来调用 apache ant

ERRORLEVEL 4264624当我使用带有或不带有测试任务的测试任务时,这给了我一个一致性<fail/>

换句话说,我没有得到 ant.bat 的状态,而是其他的。

这是 DOS 而不是 BASH,所以我无权访问

有没有直接的解决方案,如果不是,我的目标是如图所示记录 ant 输出,并捕获返回代码。

0 投票
1 回答
444 浏览

file - 将文件内容从文件路径传送到单个文件 - UNIX

我有一个文件路径列表,并希望将每个文件中的数据放入一个公共文件中。文件路径列表在一个文件中,每行一个,所以我希望我可以做类似的事情:

显然那是行不通的,因为那只会让我找到路径而不是其中的东西 - 嗯......

我可以使用Python来做到这一点,但我假设有一个 1-liner 可以使用UNIX管道来做到这一点——有人知道它会是什么吗?

0 投票
2 回答
1608 浏览

unix - 命令管道进入子shell

和有什么区别

就幕后发生的事情而言?我可以理解第二个,因为 tee 将流分叉到文件中,也分叉到管道中。但我对第一个感到困惑。

0 投票
3 回答
17659 浏览

bash - 如何发球到标准错误?

我想拆分stdout以便将其同时打印到stdoutstderr。这听起来像是一份工作,tee但语法却在逃避我——

当然,stderr这里究竟应该怎么称呼呢?

0 投票
2 回答
58 浏览

shell - 复制标准输入,运行两个任务,同时保留输出行的顺序?

我想编写一个单行命令来使用相同的标准输入副本执行两项任务。这是示例:

结果最终将保存到一个文件中,由我的程序处理。我期望得到的是:

但是,有时,如果wc碰巧更慢,输出顺序可能会颠倒:

也许我不应该这样使用tee?你有什么建议吗?

0 投票
4 回答
24119 浏览

linux - 使用 tee 命令将输出重定向到不存在的目录中的文件

我正在尝试使用 tee 命令将输出重定向到文件,并且我希望在尚未创建的目录中创建文件。

当 new_dir 不存在时, tee 命令失败说

tee: new_dir/new_file: 没有这样的文件或目录

如果我在运行 tee 命令之前创建 new_dir ,那么它可以正常工作,但是由于某种原因我不想手动创建 new_dir ,是否可以使用 tee 命令创建 new_dir ?