bash中的特殊操作符
我注意到crontab的用法bash中的特殊操作符,bash,cron,stdin,Bash,Cron,Stdin,我注意到crontab的用法 crontab - 如果我回显此命令中的某些内容,则它能够覆盖cron内容,例如 $ crontab -l ... # m h dom mon dow command * * * * * /bin/ls $ crontab -l | sed 's/ls/cd/g' | crontab - $ crontab -l ... # m h dom mon dow command * * * * * /bin/cd 问题: 在bash中“-”是什么意思?“-
crontab -
如果我回显此命令中的某些内容,则它能够覆盖cron内容,例如
$ crontab -l
...
# m h dom mon dow command
* * * * * /bin/ls
$ crontab -l | sed 's/ls/cd/g' | crontab -
$ crontab -l
...
# m h dom mon dow command
* * * * * /bin/cd
问题:
在bash中“-”是什么意思?“-”在bash中是通用的吗 从crontab手册页
手册crontab
:
此命令的第一种形式用于从安装新的crontab
某些命名文件或标准输入,如果
给出了伪文件名“-”
因此,
-
被stdin(您通过管道传输到它的内容)所取代 -
不是特定于bash的。这是许多unix程序作为文件使用的一种约定,表示“stdin”(用于输入)或“stdout”(用于输出)
在这种情况下,
crontab
通常采用一个参数,该参数是要读取并加载为新cron内容的文件名。相反,传递-
意味着“从标准输入中获取内容”。它不是运算符;这是一个传统的文件名。谢谢你的回答。我接受另一个答案,因为它也可以用作标准输出。