【发布时间】:2017-07-27 21:25:40
【问题描述】:
我想通过用 python 编写的 os.system 命令打开和关闭 cron 作业。基本上,使用 sed 命令注释/取消注释 crontab 行以控制作业调度。
但是当我把这个命令如下所示时,python 解释为 # 作为注释之后的文本。
import os
os.system("crontab -l | sed '/^\*.*heightSQL.py/s/^/#/' | crontab -")
有没有办法告诉python不要将#解释为注释符号?
【问题讨论】:
-
为什么需要井号?
-
在字符串文字中,Python 本身已经忽略了哈希。这只是另一个角色。
-
可能是你的编辑器显示不正确,但python会理解。
-
我认为是您的命令无效:尝试
os.system("echo sed '/^\*.*heightSQL.py/s/^/#/'"),您会看到#可以。 -
@jonrsharpe 不幸的是,它在将哈希运行到命令中时不会将其视为另一个字符,如图所示。例如, print ("#John") 如你所说的给出输出#John,但在这种特殊情况下不是
标签: python sed comments crontab os.system