複数のコマンドスクリプト

複数のコマンドスクリプト

Cronで実行されるPHPスクリプトがあります。出力をファイルに保存したいのですが、シェル出力も別のファイルに保存したいと思います。理想的には一行で表示したいです。だから、次のことを試しました。

script "/folder/log/file.errors."`date +"%Y-%m-%d.%H-%M-%S"`".txt" && /usr/bin/php /folder/file.php > "/folder/log/file.php."`date +"%Y-%m-%d.%H-%M-%S"`".txt"

ただし、最初のコマンド(以前&&)のみが実行されます。同様に、;代わりに&&

これを2つの別々のコマンドで実行すると正常に動作します。

root:~# script "/folder/log/file.errors."`date +"%Y-%m-%d.%H-%M-%S"`".txt"
root:~# /usr/bin/php /folder/file.php > "/folder/log/file.php."`date +"%Y-%m-%d.%H-%M-%S"`".txt"

これら2つのコマンドを1つのコマンド/行にどのように接続できますか?

exitまた、Cronで実行するときは、上記のコードの後に​​コマンドを実行する必要がありますか?スクリプトファイルに正しく保存しますか?

ベストアンサー1

terdonの要求に応じて質問に「回答」と表示されるように、このコメントを回答として投稿します。

ロギングに頼るのではなくscript、特にこれがcron操作で終わる場合は、PHPコードで指定された1つ以上のファイルに出力およびエラーメッセージを送信することを検討してください。これをcronで実行すると、>/dev/null 2>&1ディレクティブのようなものとして送信しない限り、セッションログが生成されます。したがって、デバッグツールを使用してcronログを確認できます。

おすすめ記事