我听说printf
比echo
. 根据我的经验,我只能回忆起一个我不得不使用的实例,printf
因为它echo
无法将一些文本输入到 RHEL 5.8 上的某个程序中,但printf
确实如此。但显然,还有其他差异,我想询问它们是什么以及是否有特定情况下何时使用一种与另一种。
我想知道如何理解以下内容:
将命令的标准输出通过管道传输到另一个命令的标准输入是一种强大的技术。但是,如果您需要通过管道传输多个命令的标准输出怎么办?这就是过程替换的用武之地。
换句话说,进程替换可以做任何管道可以做的事情吗?
进程替换可以做什么,而管道不能?
我正在尝试将 python 生成的输入重定向到 bash 5.0.3 中的 ELF 64 位可执行文件。我正进入(状态:
> ./bf <<< $(python2 -c "print('c'*6+b'\x00'+'c'*6)")
bash: warning: command substitution: ignored null byte in input
Enter password: Password didn't match
input: cccccccccccc
Run Code Online (Sandbox Code Playgroud)
如何在输入中允许空字节?