Help us understand the problem. What is going on with this article?

cron実行時のカレントディレクトリは、実行ユーザのホームディレクトリ

More than 5 years have passed since last update.

環境等によって違いがある可能性はありますんで、可能なら

crontab
* * * * * date > temp.txt

みたいなことをして、 temp.txt が吐き出される場所を確認したら良いかなと思います。

現象

プログラムと設定ファイルが同一ディレクトリにある前提で実装していたのだが、そのプログラムをcronから実行した途端動作しなくなった。

解決方法

答えはタイトルの通りなので、 ~/ に設定ファイルなりを置くとOK。
でもちょっと気持ち悪いよね、ということで、

  • プログラム内でフルパス(もしくは環境変数等から割り出せるディレクトリ)を指定
  • crontab で以下のようディレクトリ移動する。
crontab
* * * * * cd DIR ; ./PROGRAM

その他、まぁこの 「ホームディレクトリで実行される」 ということが分かっていれば好きに対策を講じることができるので安心です。

doranekohc
C言語があればなんでもできる
http://doranekohc.hatenablog.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした