AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[tee](unix)

Martin Hope
j4nd3r53n
Asked: 2024-05-28 18:59:06 +0800 CST

tee 可以“保存”到 stderr 吗?

  • 5

我知道怎么用tee,当然,我已经用过很多次了。然而,它通常是这样的:

du -h /some/directory | sort -h | tee census

虽然这工作正常,但这意味着我直到快结束时才看到任何内容,因为sort需要收集du.我认为如果可以做一些事情可能会很好:

du - h | tee stderr | sort -h > census

其中显然stderr是一些表示真实误差输出通道的符号。我在相当稀疏的文档中没有找到任何内容 - 这可能吗?

tee
  • 1 个回答
  • 40 Views
Martin Hope
kature
Asked: 2022-07-13 04:53:42 +0800 CST

tee 与重定向/附加有何不同?

  • -1

如果我们想将刚刚在 stdin 中写入的内容复制粘贴到 stdout,我们可以使用 redirect>或 append >>。

tee从标准输入写入标准输出有何不同?

tee
  • 3 个回答
  • 50 Views
Martin Hope
peso
Asked: 2022-06-14 10:59:17 +0800 CST

如何使用 tee 追加到文件的开头,而不是最后?

  • 2

我正在使用此 bash 命令将数据附加到降价文件: echo "${{ env.PR_TITLE }}" | tee -a page1.md.

我想知道是否可以将 echo 语句附加到page1.md开头,所以第 1 行。与最后一行相反。

如果是这样,我该如何编辑上面的命令来做到这一点?

bash tee
  • 2 个回答
  • 445 Views
Martin Hope
Konrad
Asked: 2021-11-18 10:21:30 +0800 CST

通过三通管道 JShell REPL

  • 0

如果可能的话,我想通过以下方式通过 tee 管道 JShell REPL:

jshell | tee "~\jshell-`date +'%d_%m_%Y__%H-%M-%S'`.log"

该命令执行并且 Shell 启动,但没有文件实现。

pipe tee
  • 1 个回答
  • 25 Views
Martin Hope
Cjen1
Asked: 2020-02-21 05:21:51 +0800 CST

tee中-p标志的用例是什么

  • 1

只是阅读 tee 的手册页,它说:

       -p     diagnose errors writing to non pipes

我只是想知道这个用例是什么?

linux tee
  • 1 个回答
  • 83 Views
Martin Hope
Cyker
Asked: 2019-12-10 09:50:00 +0800 CST

bash:具有管道、三通和流程替换的竞争条件

  • 3

我想看到twice被输出两次,但这个脚本只会输出一次:

dump() {
    (sleep 1; cat) > "$1"
}
(sleep 0; echo "twice") | tee >(dump "./a.txt")
echo "$(< "a.txt")"

要看两次,我必须调整睡眠时间:

dump() {
    (sleep 0; cat) > "$1"
}
(sleep 1; echo "twice") | tee >(dump "./a.txt")
echo "$(< "a.txt")"

是什么导致了这里的比赛条件?

bash tee
  • 3 个回答
  • 586 Views
Martin Hope
Erwann
Asked: 2019-07-03 14:42:42 +0800 CST

将标准输出及其替换加入表中

  • 0

说我有:

$ cat tmp1.txt
a
b
c

然后

$ paste tmp1.txt <(tr '[:lower:]' '[:upper:]'<tmp1.txt)
a   A
b   B
c   C

我将如何将以上内容修改为

1/ 只调用tmp1.txt一次?(我怀疑tee)

2/ 提供tmp1.txt来自终端的内容(就像由命令的输出产生的一样)。为此,我试图对此进行修补,但并没有走得太远:

$ cat<< 'EOF' | tee >(tr '[:lower:]' '[:upper:]')
a
b
c
EOF

输出:

a
b
c
A
B
C
io-redirection tee
  • 2 个回答
  • 58 Views
Martin Hope
Poutrathor
Asked: 2019-01-30 08:42:06 +0800 CST

将 pg_dump 转发到 2 个不同的 psql,一个日志文件但不是控制台

  • 2

我正在尝试将 pg_dump 推送到 2 psql 和日志文件,但我不想给终端添加噪音。

在tee工具的众多帖子之后,我得到了这个命令,除了控制台仍然被淹没之外,它确实有效。

pg_dump -a -t table-country -p 5432 -U usr db-maint2  2>&1 | tee >(psql -p 5432 -U postgres db-project) >(psql -p 5432 -U postgres db-gp-projet) >"initDB_$(date +%Y%m%d_%H%M).log"

我已经阅读了周围,但我没有找到更好的解决方案。

此外,来自 pg_dump 的标准输出在我的命令之后显示在控制台中,但是来自两个 psql 的日志仅发送到终端而不是日志文件。

编辑:好的,我找到了如何将 psql 输出到日志文件:

pg_dump -a -t table-country -p 5432 -U usr db-maint2  2>&1 | tee >(psql -p 5432 -U postgres db-project >"initDB_$(date +%Y%m%d_%H%M).log") >(psql -p 5432 -U postgres db-gp-projet >"initDB_$(date +%Y%m%d_%H%M).log") >"initDB_$(date +%Y%m%d_%H%M).log"

实际上,它只记录一个 psql 命令,即使-a使用 tee 添加句柄也只会在 file.log 中创建一个 psql 输出。

编辑第 n :没有更多的想法。

编辑 n^th + 1 :ofc,我的大脑终于醒了。

bash tee
  • 2 个回答
  • 1703 Views
Martin Hope
mattst
Asked: 2018-04-26 09:40:57 +0800 CST

将 find 的输出发送到 stdout 并通过管道传输到 grep

  • 1

我有 100 多个 rar 文件,我想使用 findexec命令提取这些文件。我想查看通常的 rar 输出,以便我可以监视其进度,并将输出通过管道传输到grep然后再传输到wc以计算“所有正常”行(如果成功提取存档,rar 将打印)。

我使用以下命令(没有最终wc -l组件)进行了测试,该命令旨在查找 2 个 rar 档案,但它只是打印了 4 行“一切正常”,提取的 2 个 rar 档案中的每一个都打印了 2 行。

$ find -iname 'TestNum*.rar' -execdir rar e '{}' \; | tee - | grep -i 'All OK'
All OK
All OK
All OK
All OK
Note: 2 archives extracted, but 4 'All OK' lines, and none of rar's output.

我想要的是这样的:

$ find -iname 'TestNum*.rar' -execdir rar e '{}' \; | ... ???
Extracting from TestNum1.rar
All OK
Extracting from TestNum2.rar
All OK
2

最后一行只有 2 是wc -l输出,显示“一切正常”的实际匹配数。

这可能吗?谢谢。

编辑@ 2018-04-25 19:21

我刚刚意识到我可以做以下工作正常:

find . -iname 'TestNum*.rar' -execdir rar e '{}' \; | tee rar_out
grep -i 'All OK' rar_out | wc -l

我最初问的可能还是出于兴趣?

find tee
  • 1 个回答
  • 641 Views
Martin Hope
Саша Черных
Asked: 2018-01-25 07:24:00 +0800 CST

标准输出到多个文件,如果标准输出默认到文件

  • 1

一、总结

如果默认情况下在 CLI 程序 stdout 到文件中,我找不到,我能做什么,该文本输出到多个文件。

2. 例子

我使用generate-changelog包。在这个包中默认输出打印到文件,而不是控制台。

3. 预期行为

我想将相同的输出添加到 2 个文件:

  • SashaVersion.txt— 文件,我只想在其中添加一次标准输出;
  • CHANGELOG.md— 文件,我想在其中多次添加标准输出;这个文件不是必须覆盖的。

4.没有帮助

  1. 双重使用-f参数 - changelog -f SashaVersion.txt -f CHANGELOG.md。
  2. tee命令,例如 —changelog -f | tee SashaVersion.txt CHANGELOG.md。
stdout tee
  • 1 个回答
  • 410 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve