下記のようなシェルスクリプトが最後の行まで実行されているかどうか確認する方法はありますか?
-----------
#!/bin/sh
cd /var/www/html/example.com/
php -f 1.php > result
php -f 2.php > result
php -f 3.php > result
php -f 4.php > result
exit
-----------
もし
php -f 2.php > result
で止まってしまった場合、
php -f 3.php > result
php -f 4.php > result
が実行されないわけですが、そのような状況を把握することは可能でしょうか?
resultファイルをみればわかるのでしょうか?
No.3ベストアンサー
- 回答日時:
まず、linux環境容量食って捨ててしまったので試せず、いい加減なこと言ってたらすみません。
>php -f 2.php > result
>で止まってしまった場合、
>php -f 3.php > result
>php -f 4.php > result
>が実行されないわけですが、そのような状況を把握することは可能でしょうか?
残念ですがこのシェルスクリプトは質問者様が考えている通りには動かず、途中で異常がおきても止まりません。
2.phpでコケても、3.php、4.phpは実行されるという意味です。
この書き方だと最後まで実行続けます。
なお、すみませんが、エラーで止める方法は確かあったはずですが、パっと出てこなかったので記載していません。
どこでコケたというのはphpの出力処理がどうなっているのかによりますので、resultを見れば、わかるかもしれませんし、わからないかもしれません。こちらではなんとも言えません。
ついでに
php -f 2.php > result
という書き方だと出力ファイルを毎回上書きします。つまり1.phpのあと2.phpが動くと1.phpの出力が消えます。
そのため以下の例のようにphpファイルごとにresultファイルを変更するなどしたほうがいいでしょう。
例:
php -f 1.php > result1
php -f 2.php > result2
php -f 3.php > result3
php -f 4.php > result4
一つのファイルに追記する方法もありますが、それはご自身で調べてください。大したことじゃないです。
No.4
- 回答日時:
要所にechoを出しておけばざっくり分かる
詳細は、resultで確認するとして
No.2
- 回答日時:
まず, どのタイミングで「把握」したいのかな. シェルスクリプトを実行している途中で「あ, この前のコマンドの実行に失敗してる」と気付くことが必要なのか, それともシェルスクリプトが全部終わってから「あ, このコマンドで失敗してるや」とわかればいいのか.
そして, どういう手段を使うのかにもよると思う. 例えば, シェルスクリプトの標準出力 (または標準エラー) に出すのか, どこかのファイルに書き出すのかなど.
もちろん, ここで例にあがっている 1.php などの中身によっては「result を見る」ことで (シェルスクリプトが終わったときに) わかるかもしれない.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- PHP WordpressのPHPを安全に編集する方法 1 2022/08/04 01:43
- PHP ECCUBE4のページ管理でPHPを実行させたい 1 2023/04/06 11:42
- PostgreSQL 画像とカテゴリーを出力したいのですが、取得の条件を付ける方法がわかりません。 2 2022/05/01 18:03
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP PHPの変わった閉じタグの必要性と意味を教えてください。 1 2022/08/28 15:15
- PHP php エラー 2 2022/10/23 16:43
- PHP eclipse pleiades phpのインストールについて 1 2023/02/03 17:15
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
phpinfo.phpを開くとファイルの...
-
別ファイルの変数を呼び出した...
-
別PHPファイルに変数を渡す
-
PHPでバックグランド処理について
-
CFileDialogの最初のディレクト...
-
VB6にてメールを送信する方法
-
onedrive にexcelファイルをア...
-
phpのheader("Location:#pos")...
-
バイナリファイルをブラウザに...
-
OpenGLで描いて画像ファイル出力
-
フォントの色を変えるには?
-
VB.NET 最下位のディレクトリ名...
-
リンク先を隠す方法はないでし...
-
PHPのif文でその処理を途中で抜...
-
FORMタグを使わずに、POSTする...
-
youtubeに音声のみのmp4ファイ...
-
mysql複数レコードをまとめて削...
-
受け取ったパラメータを次のphp...
-
phpの階層が変わると上手く読み...
-
Subversionのリポジトリの削除
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別ファイルの変数を呼び出した...
-
別PHPファイルに変数を渡す
-
シェルスクリプトからphpファイ...
-
include先でのinclude元の変数...
-
phpinfo.phpを開くとファイルの...
-
phpのソースコードが、そのまま...
-
Javascriptで解凍のコマンドは...
-
phpのプログラムエラー
-
codeigniterでcron実行したい
-
1行目の#! "C:\\xampp\\php\\p...
-
拡張子をphpではなくcgi...
-
Fatal errorについて教えてくだ...
-
CGIタイプのPHPとは・・・?
-
テンプレート化したphpのmenu.p...
-
FPDFでPDFファイルが表示されない
-
ローカルでは動くがサーバーで...
-
cronで外部ファイルへアクセス
-
PHP(.php)及びJavascrpit(.j...
-
このたびpostgresql初めて使用...
-
プログラミング初心者です 先程...
おすすめ情報