2015.
07.
22
18:55:33
結論から書くと「cd」コマンドでディレクトリを移動してから
スクリプトを実行する形が現実的です。
書き方は、例えば
になります。
まず
cd /hoge;
で「/hoge」に移動して
./hoge01.sh
で「hoge01.sh」を実行していますよ。
「/etc/crontab」を編集することによって任意のディレクトリを
カレントディレクトリ(というかホームディレクトリ)として指定することもできますが、
何がどうなるか分からないので、オススメはしません。
身も蓋もないことを言いますが、個人的にはcronに登録するスクリプト内のパスは
絶対パスで書くのが基本
だと思っています。
例えば、スクリプト内に「BASE_DIR」のような変数を用意して、
そこで基点となるディレクトリを設定するとかですね。
crontabを使ってあれこれするよりもスクリプト内で吸収した方が楽だと思いますが、
いかがでしょ(--?
……って、話が脱線しましたね。
もう一度まとめておくと
みたいに書いて、cdコマンドでディレクトリを移動してから
スクリプトを実行するのが現実的です。
そんな感じ\(--)/
スクリプトを実行する形が現実的です。
書き方は、例えば
0 1 * * * cd /hoge; ./hoge01.sh
になります。
まず
cd /hoge;
で「/hoge」に移動して
./hoge01.sh
で「hoge01.sh」を実行していますよ。
「/etc/crontab」を編集することによって任意のディレクトリを
カレントディレクトリ(というかホームディレクトリ)として指定することもできますが、
何がどうなるか分からないので、オススメはしません。
身も蓋もないことを言いますが、個人的にはcronに登録するスクリプト内のパスは
絶対パスで書くのが基本
だと思っています。
例えば、スクリプト内に「BASE_DIR」のような変数を用意して、
そこで基点となるディレクトリを設定するとかですね。
crontabを使ってあれこれするよりもスクリプト内で吸収した方が楽だと思いますが、
いかがでしょ(--?
……って、話が脱線しましたね。
もう一度まとめておくと
0 1 * * * cd /hoge; ./hoge01.sh
みたいに書いて、cdコマンドでディレクトリを移動してから
スクリプトを実行するのが現実的です。
そんな感じ\(--)/