是否可以在不需要脚本的情况下通过一个命令实现此目的:
echo "test" > /folder/that/does/not/exist/newFile.txt
Run Code Online (Sandbox Code Playgroud) 我的程序输出到stderr和stdout。我想在stderr和 中搜索“模式” stdout。我希望将其余部分发送到/dev/null.
如果我在重定向后使用管道stderr:./prog 2>/dev/null | grep "pattern"
我没有得到stderr包含“模式”的行。
如果我在重定向之前使用管道stderr:./prog | grep "pattern" 2>/dev/null
没有一个stderr被重定向到/dev/null
感谢您的帮助。
通常,但并非总是如此,当我在计算机上启动终端并|在命令中使用管道 ( ) 时,pbpaste | wc例如,bash 给出-bash: wc: command not found. (双空格不是错字)。
过了一会儿,我找到了一个解决方案:我删除了管道 ( pbpaste |wc)后面的空间,一切正常。但是当我用空格运行管道时,一切正常,bash 发现该命令完全有效,即使我几分钟前输入完全相同的命令时,它也根本不喜欢该命令。
这是它的屏幕截图:
我有两个非常相似的问题:
我正在使用在内核 3.2.0 上运行的 Linux 系统。在这个系统上,我编写了一个程序,它最终会生成大约 50GB 的数据,然后将其发送到 stdout。这个输出我想重定向到一个文件。
会发生某种管道溢出吗?还是不管数据量如何,管道都能可靠地工作?
pipe ×4
command-line ×2
linux ×2
redirection ×2
bash ×1
bsd ×1
grep ×1
mac ×1
stderr ×1
stdout ×1