我在bash中编写了一个小脚本,它解析所提供的文件或stdin,如果没有给出文件来产生一些输出.将解析后的输出重定向到stdout的最佳方法是什么(在脚本末尾,结果存储在变量中).我应该使用cat还是echo,还是有其他首选方法?
使用printf命令:
原文链接:https://www.f2er.com/bash/384428.htmlprintf '%s\n' "$var"
对于简单的情况,echo是可以的,但对于某些参数它可能表现得很奇怪.例如,echo有一个-n选项,告诉它不要打印换行符.如果$var恰好是-n,那么
echo "$var"
不会打印任何东西.并且有许多不同版本的回声(无论是内置于各种shell中还是作为/ bin / echo),具有微妙的不同行为.