0

您好,我有一个 shell 命令需要放入 crontab 中才能定期运行。

我已经在工作目录中测试了我的脚本,比如我的主目录,它工作正常。类似的东西:

python myscript.py <input >/tmp/output 

如您所见,myscript.py 和输入文件位于我的主目录中,输出应进入 tmp 文件夹。

我知道我可以在完成测试时使用“which”命令来获取 python 的路径和“pwd”命令来获取工作目录。但是,我想知道是否有工具或命令可以轻松地将其转换为完整版本。我怎样才能轻松地用完整路径替换所有内容,以便我可以将“完整路径版本”放入 crontab 中,并且可以在全球范围内识别它。

python myscript.py <input >/tmp/output
... magic ...
/usr/bin/python /home/myAccount/myscript.py </home/myAccount/input >/tmp/output
4

1 回答 1

1

对于 bash,您可以使用一个命令轻松做到这一点:

echo "$(type -P python) $HOME/myscript.py <$HOME/input >/tmp/output"

这不依赖于外部命令,如whichor pwd。您也可以将其放在脚本上。只需添加#!/bin/bash标题即可。

于 2013-09-08T19:11:39.577 回答