在 Solaris 中的 2 个管道中间打印 STDOUT(bash)

发布于 2024-09-26 13:51:03 字数 715 浏览 12 评论 0原文

http://www.webdesignerdepot.com/rss.htm

我也有同样的问题。这个命令:

./somescript.sh > ../log/scriptlog.log

需要命令 go 的输出到 std out。但在脚本

命令 | mailx -s "Subject" [电子邮件受保护]

我想要做什么类似于:

命令|三通 > /dev/stdout | mailx -s "Subject" [email protected]

其中命令的输出转到 stdout(重定向到 ..log/scriptlog.log 文件),

也转到 stdin 以执行 mailx 命令。

有办法做到吗?

http://www.webdesignerdepot.com/rss.htm

I have the same issue. This command:

./somescript.sh > ../log/scriptlog.log

requires the output of a command go to std out. but inside the script

command | mailx -s "Subject" [email protected]

what I would like to do is something like :

command | tee > /dev/stdout | mailx -s "Subject" [email protected]

Where the output of the command goes to stdout( to be redirected into the ..log/scriptlog.log file )

and also into stdin for the mailx command.

Any way to do that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

叫思念不要吵 2024-10-03 13:51:03

tee 已发送到标准输出。

... | tee -a log/scriptlog.log | ...

tee already sends to stdout.

... | tee -a log/scriptlog.log | ...
伴随着你 2024-10-03 13:51:03
exec 3>&1
command | tee /dev/fd/3 | mailx ...

或者,使用进程替换:

command | tee >(mailx ...)
exec 3>&1
command | tee /dev/fd/3 | mailx ...

or, using process substitution:

command | tee >(mailx ...)
会傲 2024-10-03 13:51:03

我将尝试进程替换。澄清一下,我有一个 cron'd shell 脚本。 cron 条目类似于:
/usr/script/myscript.sh > /usr/log/myscript.log

脚本内的 是类似于以下内容的行:
命令 | mailx -s“Subject”收件人

由于来自“command”的标准输出正在通过管道传输到mailx命令中,因此它确实出现在日志文件“myscript.log”中,但我希望它出现。

我尝试将其捕获到变量中,但换行似乎会以这种方式丢失。我可以使用临时文件,但我希望有更优雅的东西。

I'll try process substitution. To clarifily, I have a cron'd shell script . The cron entry is similar to:
/usr/script/myscript.sh > /usr/log/myscript.log

inside the script is a line similar to:
command | mailx -s "Subject" recipient

Since stdout from 'command' is being piped into the mailx command, it does appear in the log file 'myscript.log', but I want it to.

I tried capturing it into a variable but the line feeds appear to be lost that way. I could use a temporary file, but I was hoping for something more elegant.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文