如何在 BASH 中使用 | 打印文件的最后修改时间?

如何在 BASH 中使用 | 打印文件的最后修改时间?

我是 BASH 编码新手。有什么方法可以将文件(例如照片)的上次修改时间打印到名为 last-modified.txt 的文本文件中

我尝试搜索了一下,可以使用以下代码完成任务

stat -c %y photos >> last-modified.txt 

但是,我想用来|完成任务

编辑:前面提到的命令(涉及>>或附加)运行良好,但我很好奇想知道我是否可以通过类似的方法实现相同的结果stat -c %y photos | cat last-modified.txt(虽然我知道这不起作用,但你明白我在这里想要实现什么)。

答案1

使用tee

球座- 从标准输入读取并写入标准输出和文件

附加到文件:

stat -c %y photos | tee -a last-modified.txt

或覆盖文件:

stat -c %y photos | tee last-modified.txt

这在以下情况下尤其有用:(1) 想要将输出保留在屏幕上,或者 (2) 需要使用 写入文件sudo,那么您可以使用... | sudo tee ...

相关内容