通过管道传输附加输出并将其写入输出文件

通过管道传输附加输出并将其写入输出文件

我想wc -l将 的输出写入文件,并在数字之前添加日期。例如,

$ wc -l file.txt
25
$

我想追加

Wed Jul  8 17:30:17 +0130 2020 25

到另一个文本文件。不知道如何正确echo date输入
cat file.txt | wc -l > anotherfile.txt

tsmoreutils包中获得了可用的命令。

有什么解决办法吗?

答案1

如果您确实想完全按照标题中的描述进行操作,那么您可以使用命令分组,例如。

{ printf '%s\t' "$(date)"; wc -l < file.txt; } > anotherfile.txt

printf在这里使用以避免尾随换行符)。

但是您可能需要考虑使用该ts命令

wc -l < file.txt | ts > anotherfile.txt

至少在moreutils实现中,ts接受strftime类似格式参数,例如

wc -l < file.txt | ts '%c' > anotherfile.txt

将以您所在区域的默认日期和时间格式添加时间戳。

相关内容