• ベストアンサー

このコマンド文の意味を教えてください。

bashを使っていて、以下のようなコマンドを見る機会がありました。 */30 10-20 * * * nice /php/bin/php $HOME/project1/dev/bin/cron_update.php > /dev/null いくつか分からない点があったので、質問させてください。 1. 頭の、*/30 10-20 *** は、どういう意味でしょうか?? 2. nice は命令の実行順序を指定するコマンドのようですが、ここでは/php/bin/php の次に$HOME/project1/dev/bin/cron_he_photo_index_update_queue.php と来ています。/php/bin/php というのがただのディレクトリのような気がするのですが、これを最初に実行、というのはどういう意味なのでしょうか。 3.>でリダイレクトしていますが、ディレクトリにリダイレクトしているように見えます。ファイルにリダイレクトするものなら扱ったことがあるので分かるのですが、ディレクトリにリダイレクトというのは、何がディレクトリに出力されるのでしょうか。 以上、ご教示頂けると幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • 774danger
  • ベストアンサー率53% (1010/1877)
回答No.3

> phpとかnullという名前のファイルなんですね。 /dev/nullは普通のファイルとはちょっと違うんですよ。 crw-rw-rw- 1 root wheel 0, 6 Jun 11 09:00 /dev/null ↑ここに注目 Windowsでいうところのゴミ箱的使い方ができたり、他にも(ごにょごにょ)

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • narusuji
  • ベストアンサー率40% (4/10)
回答No.4

詳しくはありませんが、回答させて頂きます。 1.について。 http://miya0.dyndns.org/pc/settei/crontab.html 3.について。 http://x68000.q-e-d.net/~68user/unix/pickup?%2Fdev%2Fnull コマンド "contab -e"を実行してみてはいかがでしょう。 http://www.express.nec.co.jp/linux/distributions/knowledge/system/crond.html

全文を見る
すると、全ての回答が全文表示されます。
  • notnot
  • ベストアンサー率47% (4853/10268)
回答No.2

1. コマンドではなくて、crontab の設定情報ですね。man 5 crontab 参照。 2. niceはコマンドをCPUプライオリティーを変えて(一般には下げて)実行するコマンドです。 >/php/bin/php というのがただのディレクトリのような気がするのですが 気のせいですが、何故そう思ったのでしょうか? 3. >ディレクトリにリダイレクトしているように見えます。 これも気のせいですが、何故そう思ったのでしょうか?

miraikako
質問者

お礼

レスありがとうございます。 >>ディレクトリにリダイレクトしているように見えます。 >これも気のせいですが、何故そう思ったのでしょうか? そうか、ファイル=拡張子が付いているハズ と勘違いしていました汗 phpとかnullという名前のファイルなんですね。

全文を見る
すると、全ての回答が全文表示されます。
  • koko_u_
  • ベストアンサー率18% (459/2509)
回答No.1

雰囲気 crontab の中身のようですね。

miraikako
質問者

補足

ありがとうございます。 $HOME/project1/dev/bin/cron_he_photo_index_update_queue.php と来ています。 の部分 $HOME/project1/dev/bin/cron_update.php と来ています。 の間違いでした。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Easy botterのcron設定がうまくいきません。

    さくらインターネットで、Easy botterをつかったcronの設定をしていますが、うまくいきません。 いろんな方のサイトやQ&Aなどで、コマンドの入力例を拝見するのですが、 「アカウント名」とか「ユーザー名」などは分かるのですが、 「Easy botterをアップロードしたディレクトリ名」とか「実行ファイルのおいてあるディレクトリ名」と 表記される部分には何を入れていいのかさっぱり分かりません。 プログラミングどころか、PCの扱いもド素人なので、どんな文字列が入るのか、すら、想像がつかないのが現状です。 ちなみに、アップロードにはFFFTPというのを使っています。 この辺のダウンロードや設定は、他の人がやってくれたのですが、cronの設定については何度やっても上手くいかず、 お手上げされてしまいました。 最終的にやりたいことは、1時間おきに用意してある言葉を呟くようにしたくて、 cronを使ってbot.phpというのを起動させる(アクセスさせる)、ことでそれが可能になるみたいなので、 cron設定のコマンドの部分に入力するコマンドを完成させたいです。 今のコマンドは cd /home/ユーザー名/実行ファイルのおいてあるディレクトリ/ ; /usr/local/bin/php 実行ファイル名 > /dev/null というのを入力していて、ユーザー名は分かっていますし、実行ファイルというのがbot.phpだと思うので、 そのディレクトリの部分が埋まれば、正常に機能すると思うのですが… …ディレクトリ名はファイル名を同じ、みたいな説明も見ましたが、 その意味もよく分かりませんでした。 初歩的すぎる質問ですが、どなたか、よろしくお願いします。 質問自体も分かりにくかったら、すみません。

  • [シェルスクリプト内で bashコマンド後のコマンドが実行されない]

    [シェルスクリプト内で bashコマンド後のコマンドが実行されない] 以下の様にシェルスクリプトを記述するとコマンド2が実行されません。 #! /bin/sh コマンド1 bash コマンド2 bash環境でコマンド2を実行させるにはどうしたら良いのでしょうか?

  • cron実行時のメールについて

    SolarisでCRONを実行した場合 メールが送信されるようですが cronに登録してあるものでもメールが送信されるモノと されないモノが存在します 実行コマンドのリダイレクトに下記が実行されているわけでもないのですが   コマンド >/dev/null 2>&1 コマンド 1> /dev/null OSはSolaris9です ご存知の方ご教授ください

  • cronでpg_dumpの実行

    こんにちわ。 Linuxでcronを設定しPHPからexecで「pg_dump」を実行しようとしています。 エラーになり実行ができません。 設定は /var/spool/cron ディレクトリに 『crontab -e -u postgres』でコマンドを実行し SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO='' HOME=/ 08 19 * * * postgres /usr/bin/php /home/var/b_dump.php とcrontabに記載しています。 コマンドの実行はrootユーザで 権限は777 にしています。 メールを届くようにしているのですが、届くメールは 『postgres does not know where to find the server configuration file. You must specify the --config-file or -D invocation option or set the PGDATA environment variable.』 と届きます。 googleで検索したのですが、解決方法がわかりません…。 読みにくい文章で申し訳ないのですが、解決方法のご教授を お願いします。

  • このcronコマンドの意味を教えてください

    下記のコマンドをの意味どなたかわかりますでしょうか。 * * * * * nobody /home/date/auto/bin/dimctrl.sh >>/home/date/log/auto.log 1、*のところで日時や時間を指定できるのはわかりますが、全部*にするといつ実行されるのでしょうか。 2、nobodyや>>の意味はなんでしょうか。 よろしくお願いします。

  • PHPファイルをcronで実行するには…?

    ご質問させてください。 私はさ○らインターネットを使っていて、そこで cron設定をしてあるPHPファイルを実行したいを考えています。(このPHPファイルというのはメール送信のファイルです。) いろいろなサイトを探し回って設定の方法を調べたら、実行コマンドに cd /home/○○/www/; ./○○.php もしくは /usr/local/bin/php -f /home/○○/www/○○.php  と記述すれば大丈夫ということなのですが、これが全く起動していないようなのです。 そもそも cron ではPHPを起動できないのでしょうか?ご存知の方がいらっしゃいましたらご教授お願いいたします!

    • ベストアンサー
    • PHP
  • tarコマンドで

    ログインしたユーザーのホームディレクトリがカレントディレクトリで、 tar -cvf /dev/hda . というコマンドを実行した場合は、ユーザのホームディレクトリのすべてのファイルを新しくアーカイブしてhdaに書き出すという意味で良いのでしょうか?

  • cronの設定

    Linux, cron, PHP CLI版を使って、定期的にPHPスクリプトを実行させようとしておりますが、どうも上手くいきません。 コマンドラインで試すと上手くいくのですが、cronを使用して動かすと、実行結果が Could not open input file: /home/---/---/--/test.php と返ってきて、実行されておりません。 以下、crontabの内容です。 MAILTO="-------.com" */1 * * * * /usr/local/bin/php /home/---/---/---/test.php お忙しい中すみませんが、どなたかアドバイスをいただけないでしょうか?

    • ベストアンサー
    • PHP
  • 現在あるサーバー(Aサーバー)のcronで次のようなコマンドでperl

    現在あるサーバー(Aサーバー)のcronで次のようなコマンドでperlのスクリプトを動かしています。 cd /home/saarisa/www/; ./tools/runtask これを他のサーバー(Bサーバー)から動かしたいと思い下記のようなSHELLスクリプトをAサーバーに作ってそれを実行したいのですがこのSHELLスクリプトの実行方法がわかりません どうしたら実行できるのでしょうか? #!/bin/sh cd /home/saarisa/www/mt/; ./tools/run-periodic-tasks 1.BサーバーのCRONから実行 2.BサーバーのPHPから実行 3.HTMLからクリックして実行 4.BサーバーからAサーバーのPERLを直接実行 どの方法でもかまいません。 (AサーバーはPHPは動かず、Bサーバーはphpが動きます。) よろしくお願いします。

  • cronでatコマンドがうまく動かない

    こんにちは。RedHat7.0のcronでatコマンドを動かそうとしています。 *********************************************** 00 14 * * * root at -f test.sh 14:30 2001-8-8 *********************************************** こんな感じで書いてあります。 このtest.shも、at -f test.sh 14:30 2001-8-8も、 単体では正常に動いてることを確認しています。 また、cron自体も正常に機能していて、 時間になるとatqでジョブが溜まっているのも確認できます。 var/log/cronでatコマンドが正常にキックされているのも 確認済みです。 でも、test.shの処理が実行できていないんです~。 単体では実行できているのに・・。 ちなみにtest.shの中身は ************************** #!/bin/bash date >aaa.txt ************************** という単純なものです。 crontabに書いた時だけファイルが出来ないのはどういう訳なのか 原因に心当たりのある方、アドバイスいただけないでしょうか。 宜しくお願いいたします。