問題タブ [shell-exec]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
8340 参照

php - php system() shell_exec() でブラウザがハングする

重複の可能性:
PHP での非同期シェル exec

バックグラウンドで Java プログラムを実行する必要があります。

process.php が含まれています

shell_exec("php php_cli.php")

php_cli.php が含まれています

ajaxを使用して非同期でprocess.phpを呼び出しています

(process.php を実行するための) ajax 関数を呼び出す Web ページのリンクをクリックすると、Web ページに「読み込み中」と表示されます。同時に他のリンクをクリックしても反応しません。

Java プログラムは実行が完了するまでに約 24 時間かかるため、ユーザーは実行が終了するまで待機しません。

問題は、ブラウザがロードを続け、リンクをクリックしても他のページに移動しないことです。

system()でも試してみましたが、同じ問題が....

助けていただければ幸いです。

0 投票する
6 に答える
199579 参照

php - How To Execute SSH Commands Via PHP

I am looking to SSH out via PHP. What is the best/most secure way to go about this? I know I can do:

Anything better? That feels so 'naughty' :).

0 投票する
1 に答える
1589 参照

php - PHP を使用した WordNet アクセス

で述べたように、wordnet 辞書にアクセスしようとしました: Calling wordnet from php (Wordnet class or API for PHP)。コマンドラインでうまくいきました。次に、辞書にアクセスするために、以下のようにphp関数 shell_exec() を使用しようとしました:

これにより、-ant、-hyp などの検索オプションが表示されます。つまり、正常に機能しました。

しかし、上記のコマンド (以下のように) に検索オプションを追加しようとすると、機能しませんでした:

または、次のようなコマンドでスペースを与えた場合でも:

それは動かなかった。

これの理由と解決策の提案を教えてください。

0 投票する
1 に答える
1567 参照

php - phpはシェルコマンドを実行します、dyld:ライブラリがロードされていません:/usr/lib/libxml2.2.dylib

wkhtmltopdf 実行可能ファイルを使用して、一部の html を pdf に変換しようとしています。Macでテストしているだけで、ターミナル経由で実行可能ファイルを実行すると正常に動作します。php shell_exec を使用して実行すると、次のエラーが発生します。

dyld: ライブラリがロードされていません: /usr/lib/libxml2.2.dylib 参照元: /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices 理由: 互換性のないライブラリ バージョン: DictionaryServices はバージョン 10.0.0 以降が必要ですが、libxml2.2.dylib はバージョン 9.0.0 を提供します。

PHP経由で使用しているcmdを吐き出すと、それを実行でき、ターミナルで正常に動作します。

これはパスの問題だと思うので、php で使用できるパスとは異なるユーザー パスをエコーアウトしたので、前にコマンドに追加しました。

私が間違っているかもしれないことについて何か考えはありますか?

ありがとう、MS

0 投票する
3 に答える
2543 参照

c# - shell_execと同等のC#

シェルを介してコマンドを実行し、C#を使用して完全な出力を文字列として返すにはどうすればよいですか?

PHPのshell_exec()と同等です。

ありがとう、進んだ。

0 投票する
3 に答える
2034 参照

php - PHP で shell_exec を使用して 'git pull' を実行してもエラーが表示されない

PHP で記述された github のデプロイ スクリプトを作成しています。shell_execコマンドを使用して実行していますが、git pullこれは正常に機能します。

プルにエラーがあると、問題が発生します。ターミナルで実行すると、完全なエラーが発生します。例えば:

しかしshell_exec、出力で同じコマンドを実行すると、次のように切り捨てられます

おそらく前の応答からの応答であるため、エラー メッセージが途切れています。完全な出力を返す方法はありますか?

0 投票する
2 に答える
1265 参照

php - mkdir と php の再帰コピー

私の機能では、コンテンツの作成と新しいディレクトリへのコピーに問題があります(これがこれを行うための最良の方法であるかどうかもわからないため、別の提案を歓迎します)。

次のように2つのネットワークドライブをマウントしています/etc/fstab

基本的に、uslonsapp003マウントからのファイル パスでプロンプトが表示されたら、ディレクトリ構造が存在するかどうかを確認し、存在しuslonsnas001ない場合は再帰的なディレクトリを作成します。uslonsapp003次に、コンテンツを の新しい構造の場所にコピーしuslonsnas001ます。これが私のコードです:

「ディレクトリの作成に失敗しました...」と「コピーに失敗しました...」の両方のエラーが発生しました

これはApacheを介して実行されます。これはパーミッションの問題だと思いますが、それは私の「勘」です。助けてください!

shell_exec() の先頭に追加しようとしましsudoたが、それでも機能しません。

更新1

/home/lv_admin/uslonsnas001ディレクトリを作成したときに、そのディレクトリのmod、所有者、およびグループを、それを使用するもの(www-data)に変更しなかったため、mkdirが失敗していることがわかりました。以下を実行すると、その部分が修正されました。

しかし、私はまだコピー コマンドに問題があり、「モジュール 'ODBC' は既に読み込まれています」と言っています。

0 投票する
4 に答える
12987 参照

php - shell_execは空の文字列を返します

PHPでコマンドを実行するとshell_exec、常に空の文字列が返されます。試し shell_exec('ls -l');てみましたが、うまくいきました。コマンドを別のファイルとして配置しましたが、それでも同じ結果になります。

0 投票する
2 に答える
1376 参照

php - PHPからシステム上でコマンドを実行する

wkhtmltopdfを使用してインストールしました

sudo apt-get install wkhtmltopdf

このためのコマンドを生成するphpスクリプトがあります。

それが生成するものの例は

wkhtmltopdf 'http://stackoverflow.com' "/tmp/Stack Overflow.pdf" --orientation Portrait --page-size A1 --zoom 1

ターミナルで実行すると、正常に実行されます。

ただし、使用して実行しshell_exec()ても効果がないようです。

呼び出しecho shell_exec('wkhtmltopdf --version -');はバージョン情報を出力するので、何かが機能していることに注意してください...


実際のコード:


デモページ

0 投票する
2 に答える
831 参照

php - PHPはサーバー統計を収集します

各サービスをベンチマークするWebアプリケーションのカスタムコンポーネントを構築しています。これまでのところ、計画は通常のものをベンチマークすることです。

  • 反応時間
  • メモリー
  • 現在のサーバーアクティビティ

基本的なものを作成し、現在実行中のプロセスと使用されているリソースの量を一覧表示するlinuxの「top」コマンドの出力を保存することを考えていました。しかし、私は実行から応答を取得することができませんでした:

しかし、phpマニュアルの例のように、他のより単純なコマンドは機能します。

したがって、私の質問は次のとおりです。-「top」コマンドをrootとして実行する必要がありますか?(現在、apacheユーザーの下で実行されています)-または、サーバー統計を取得するのに役立つ他のphpコマンドはありますか?

私はこの投稿を読みましたが、必要に応じて統計を必要とし、それらをDBに保存するため、何もインストールすることにあまり興味がありません。 PHPサーバー統計スクリプト?