“crontab -”的功能

Ben*_* C. 2 scripting cron pipe

我正在编写一个 bash 脚本,除其他外,它将在另一台服务器上编辑 crontab。我想出如何做到这一点的方法是:

crontab -l | sed <stuff> | crontab -
Run Code Online (Sandbox Code Playgroud)

它完成了我需要它做的事情,但我仍然不确定如何做。“crontab -”究竟是做什么的?当我从 shell 自己运行它时,它会接管 shell,直到我按下 ctl+c,但似乎什么也没做。它的唯一目的是用从 stdin 传递的任何内容覆盖 cron 内容吗?我似乎找不到任何关于它的文档。

WEB*_*uju 5

crontab 的一种语法是

crontab <文件>

使用破折号 (-) 代替文件名,您的用法-是采用标准输入在这种情况下是标准输出来从sed其然后在供给到替换<文件>参数和取代的cron的内容,而不是从你给它的文件作为该文件的标准输入