[解決済み] PHPを使ってcrontabのジョブを作成、編集、削除する?
2022-08-23 12:57:36
質問
PHPを使ってcrontabのジョブを作成、編集、削除することは可能でしょうか?
Apacheユーザの現在のcrontabジョブをリストアップする方法を知っています。
$output = shell_exec('crontab -l');
echo $output;
しかし、PHPでcronジョブを追加するにはどうしたらよいのでしょうか?'crontab -e' はテキストエディタを開くだけなので、ファイルを保存する前に手動でエントリを編集する必要があります。
PHPでcronジョブを削除する方法は?これもまた、'crontab -e'によって手動で行う必要があります。
このようなジョブ文字列で。
$job = '0 */2 * * * /usr/bin/php5 /home/user1/work.php';
PHPでcrontabのジョブリストに追加するにはどうしたらいいですか?
どのように解決するのですか?
crontabコマンドの使い方
usage: crontab [-u user] file
crontab [-u user] [ -e | -l | -r ]
(default operation is replace, per 1003.2)
-e (edit user's crontab)
-l (list user's crontab)
-r (delete user's crontab)
-i (prompt before deleting user's crontab)
だから
$output = shell_exec('crontab -l');
file_put_contents('/tmp/crontab.txt', $output.'* * * * * NEW_CRON'.PHP_EOL);
echo exec('crontab /tmp/crontab.txt');
上記は 作成と編集・追加 の両方で使用することができます。ただし、ユーザが適切なファイル書き込み権限を持っている場合に限ります。
ジョブを削除するには。
echo exec('crontab -r');
また、apache は特定のユーザとして動作しており、それは通常 root ではないので、cron ジョブは指定されない限り apache ユーザのためにのみ変更可能であることに注意してください。
crontab -u
の権限を与えられない限り、apache ユーザーのためにのみ変更できることを意味します。
関連
-
[解決済み】Xampp ローカルホスト/ダッシュボード
-
[解決済み】警告。数値でない値に遭遇しました
-
[解決済み】In_arrayが動作しない。
-
[解決済み】Fatal error: mysqli_result 型のオブジェクトは使用できません [終了] 。
-
[解決済み] 致命的なエラーです。mysqli_result 型のオブジェクトを使用できません [終了] 。
-
[解決済み] PHPでHTML/XMLをパースして処理する方法とは?
-
[解決済み] PHPのstartWith()関数とendsWith()関数
-
[解決済み] PHPでパスワードをハッシュ化するためにbcryptを使用するにはどうすればよいですか?
-
[解決済み] PHP 配列をキーではなく値で削除する
-
[解決済み] PHPでリクエストタイプを検出する(GET, POST, PUT, DELETE)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】予期せぬ例外。SQLSTATE[HY000] [1045] Access denied for user ****@'localhost' (using password: YES)
-
[解決済み】新しいPHPMailerはPHPMailerAutoload.phpが必要?
-
[解決済み】XAMPPのphpMyAdminで「設定にあるcontroluserの接続に失敗しました。
-
[解決済み】php, mysql - データベースへの接続数が多すぎるエラー
-
[解決済み】 libapache2-mod-php7 パッケージが見つからない。
-
[解決済み】警告:mysql_fetch_array()はパラメータ1がリソースであることを期待、ブール値は[重複]で与えられる]
-
[解決済み】警告。数値でない値に遭遇しました
-
[解決済み】PDOException SQLSTATE[HY000] [2002] そのようなファイルまたはディレクトリがありません。
-
[解決済み】Netbeans 7.4 for PHPで「スーパーグローバルな$_POST配列に直接アクセスしないでください」という警告が発生する。
-
MacでPHPを実行した際に、メモリサイズが134217728バイトも消費される問題の解決方法について