首页 > 解决方案 > 通过 cron 运行 perl-script kpcli 失败

问题描述

我想通过 cronjob使用 kpcli ( http://kpcli.sourceforge.net/ ) 运行脚本。以交互方式运行时一切正常。

通过 cronjob 运行以下最小示例时,我收到以下错误消息。

46 22 * * *     myuser /usr/local/bin/kpcli --command "vers"

这里的错误信息

No usable Term::ReadLine::* modules found.
This list was tried:
 * Term::ReadLine::Gnu
 * Term::ReadLine::Perl
 * Term::ReadLine::Perl5
For more information, read the documentation: perldoc kpcli

这是通过命令行运行时的输出

kpcli: 3.4
Perl: v5.26.1
Operating system: linux ("Ubuntu 18.04.4 LTS")
ReadLine being used: Term::ReadLine::Gnu

Pivotal Perl Modules for kpcli
 * File::KeePass: 2.03
 * Term::ShellUI: 0.92
 * Term::ReadKey: 2.37
 * Term::ReadLine: 1.16
 * Capture::Tiny: 0.48
 * Clipboard: 0.13
 * Math::Random::ISAAC: 1.003
 * Term::ReadLine::Gnu: 1.35
 * Authen::OATH: not installed (optional)
 * Sub::Install: not installed (optional)

我也尝试设置变量

PERL5LIB=/usr/lib/x86_64-linux-gnu/perl5/5.26

但什么都没有改变:(

怎么了?

标签: perlubuntucron

解决方案


我有它:)。我已通过 shell 脚本逐步取消设置所有环境变量。结果是变量 TERM="xterm" 设置在我的环境中,但没有设置在 cron 环境中。在cron中设置后一切正常


推荐阅读