我正在尝试确定 sed 是否从 stdin 读取速度更快(使用 shell 重定向 < )或通过指定 sed 应从中读取的文件。我在 Google 上没有找到明确的答案。
哪一个更快?
sed -e "expression" < file
或者
sed -e "expression" file
答案1
基本上应该没有区别。在这两种情况下,都必须打开文件并创建文件句柄。在这两种情况下,sed 都会从文件句柄读取。在第一种情况下,shell 打开文件句柄,然后通过进程继承将其作为子进程传递给 sed。在第二种情况下,sed 直接打开句柄。正如我所说,这应该几乎没有区别。