• 締切済み

perlによるシステム上の任意のプログラム実行

Perl初心者です。 システム上の任意のプログラムを実行しようと考えています。system関数のように呼び出し元に戻っては欲しいのですが、プログラム完了までwaitしないようにしたいのです。何か良い方法はあるのでしょうか。是非、ご教授いただきたく存じます。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

fork&exec

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

関連するQ&A

  • 外部プログラム実行について

    PerlからMifesのマクロを動かしたいのですが、外部プログラムを実行させるにはsystem関数とexec関数があるみたいですが、どっちを使えばいいのでしょうか? また、PerlからVBAを操作したりすることはできるんですか?どのように書いたらいいか、詳しい方法を教えて頂きたいです。

    • ベストアンサー
    • Perl
  • perlによる外部プログラムの実行

    perlにてCGIを作成しています。 ブラウザでCGIにアクセスしたとき、gpgというコマンドプロンプトの プログラムを実行したいと考えており以下のようなプログラムを作成しました。 test.batを単体で実行したときにはうまく動作するのですが、CGIを介して 実行するとうまくいきません。 CGIのプログラム (WriteCmd.cgi) **********************************  #!c:/Perl/bin/perl  print "Content-type: text/html\n\n";  print "test.batの実行\n<br>";  system("test.bat");  exit; ********************************** test.bat **********************************  gpg --batch --gen-key sample.txt ********************************** またtest.batの内容を **********************************  mkdir test ********************************** としてみるとディレクトリがちゃんと作成できるので WebサーバやPerlのパスの問題ではないと考えております。 よい解決方法がありましたら教えていただけると助かります。 よろしくお願いします。

    • ベストアンサー
    • CGI
  • C#でのPerlプログラムの実行

    C#初心者です。環境はVisualC#を使っています。 C#でGUIを作成中なのですが、GUIのあるボタンを押すと、 Perlのプログラムが実行されて、動くようにしたいのです。 どのようにすればよいでしょうか?

  • perl が 実行できない

    perl 初心者です。 apache を起動させ(起動画面は表示)、perl のファイルを IE で表示させようとして、print文を実行しても、print文がそのまま表示されるだけになっています。 perl のパスは、#! d:/perl/bin/perl です。 (コマンドラインから実行すると実行できるので、インストールは正常です。) (XP以前だったと思いますが、そのときは IEで、長文のプログラムが起動できていましたが。)

  • VBScriptの実行完了を待ってからDOSのプログラムを実行したい。

    DOSのバッチからVBScriptを実行しています。 VBScriptの実行が完了してから次のDOSコマンドを実行させたいのですが、 START /WAIT SAMPLE.vbs では 実行完了を待ってくれないみたいです。 どうしたらよいでしょうか?ご教授お願いいたします。

  • Perl から csh 実行

    やまとです。 いつもありがとうございます。 Perl + csh を同時(?)に実行する方法を教えてください。 OSはSunです。 具体的にどのような処理を行いたいか簡単に説明しますと。 1.Perlでcshを実行(system関数?)し、cshで環境変数をセット(source)する。 2.cshで環境変数をセットしたら、ファイルを出力する処理が行われます。 3.Perlでcshによって出力されたファイルの内容を画面に表示します。 以下ソースを掲載します。(抜粋して) ================================================== = Perl ( test_perl.pl ) $data = "ABC"; $ret = system(`test_csh.sh $data`); ・ ・ ファイル(test.log)を開き、読込、画面に表示します(まだ作成してません。) ================================================== = Csh ( test_csh.sh ) source test_source.sh echo $1 > test.log ================================================== = test_source.sh setenv CLASSPATH .:/aaa・・・・・・ ↑ PATHの設定を行ってます。 ================================================== 画面に、「ABC」と出力させたいのです。 Perlからcshが実行されていないように思えるのですが、 Perlのsystem関数の使い方が誤っているのでしょうか? それとも、ClassPath等の設定をしなければならないのでしょうか? ちなみにコマンドから、 # test_csh.sh ABC と実行しますと、ファイルが出力され、かつ、sourceも実行されています。 Perlから実行する方法を教えてください。 説明が不十分であれば、補足いたしますのでご指摘ください。 宜しくお願いします。

    • ベストアンサー
    • Perl
  • 実行中のプロセス監視して任意のプログラムを実行したい

    常時プロセスを監視し、特定のプログラムが実行されたら別の任意のプログラム(またはコマンド)を自動的に実行するという方法はありますでしょうか? こういった事がフリーウェアであったら嬉しいのですが…

  • cgi(perl)からphp呼出

    どなたかご教授ください。 perlのcgiからsystem関数でphp(コマンドで実行可能なコード)を実行して返値を得たいのですが perlのcgiの実行結果では画面に文字化けを起こしたような結果が帰ってきます。 cgi(perl)からphpを実行するにはどのように すればいいのでしょうか? ご教授ください。

    • 締切済み
    • PHP
  • Perlでのプログラム実行方法

    使ってるOSはWindows XPです Perlで作ったプログラムはどうやって実行するのでしょうか? それと/の反対側の記号が表示されません。参考書はUnixをベースとしてるのでWindowsでは別の記号になるのでしょうか?

    • ベストアンサー
    • Perl
  • perlのsystem関数内でのコロンについて

    perlのsystem関数内で変数展開について困っています。変数展開はできるのですが、その変数の後に':'(コロン)をつける必要があるのですが、それがモディファイアとして認識されてしまうようです。コロンをそのままperlに評価させずにsystem(shell)に渡す方法はないでしょうか? $host = "xxxx.com"; system("program ${host}:22"); ちなみに、$host:22ではうまく変数展開されないそうで、{}を使うまでは良かったのですが、その後のコロンでつまっています。programの都合でhost、コロン、ポート番号を渡す仕様のため変更できません。よろしくお願いします。

    • ベストアンサー
    • Perl
Windows31の機能とは?
このQ&Aのポイント
  • Windows31は、富士通FMVで利用可能な最新のWindowsオペレーティングシステムです。
  • Windows31は、使いやすさと高いパフォーマンスを提供し、さまざまな作業を効率的に行うことができます。
  • Windows31は、多くのアプリケーションとの互換性があり、幅広い用途に利用することができます。
回答を見る