一部のコマンドとPerlスクリプトを使用したCronの問題

一部のコマンドとPerlスクリプトを使用したCronの問題

私は私の問題に対する解決策を見つけるために数時間インターネットを検索してきましたが、私が間違っていることに対する答えや解決策が見つからないようです。 Perlスクリプトを定期的に実行するためにcronを設定しようとしています。私は、Windows 10ホストで実行されているOracle VM Virtualbox 5.2.26でUbuntu 18.04.3 LTSを仮想マシンとして使用しています。

私はPerlスクリプトの実行に成功しなかったので、私が間違っていることをテストするために別のコマンドを実行してみました。 /usr/bin/ パス内の多くのコマンドの実行に問題があります。私は「echo」と「printf」をすることができましたが、それはすべてです。以下は私のコードと各行から受け取ったエラーメッセージです(「echo "$PATH""行は正しく機能しているようです)。

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/home/myname/Alpha/ATK_queries
SHELL=/bin/bash
[email protected]
2 * * * * /usr/bin/env
2 * * * * env
2 * * * * echo "$PATH"
2 * * * * perl atk_queries.pl
2 * * * * /usr/bin/perl /home/myname/Alpha/ATK_queries/atk_queries.pl
2 * * * * perl /home/myname/Alpha/ATK_queries/atk_queries.pl

コマンドシーケンスの出力/エラー:

(1) /bin/bash: /usr/bin/env: そのファイルやディレクトリはありません。

(2) /bin/bash: $'env\r': コマンドが見つかりません

(3) /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/home/myname/Alpha/ATK_queries

(4)Perlスクリプト「atk_queries.pl」を開けませんでした:そのファイルまたはディレクトリがありません

(5) Perl スクリプト "/home/derek/Alpha/ATK_queries/atk_queries.pl" を開けませんでした: ファイルまたはディレクトリがありません。

(6) Perl スクリプト "/home/derek/Alpha/ATK_queries/atk_queries.pl" を開くことができません: ファイルまたはディレクトリがありません。

どんな指針でも大変感謝いたします。

答え1

明らかに、問題はWindowsプログラムNotepad ++でcrontabファイルを変更することに関連しています。 Haxielのコメントによると、コマンド自体内で\ rキャリッジリターンを実行するのは少し奇妙です。

crontab -eでファイルを変更し、crontabの内容を削除し、まったく同じテキストに置き換え、ファイルをDOS以外のファイルとして保存すると、Perlスクリプトだけでなくすべてのコマンドが正常に実行されました。

関連情報