重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

Java言語でバッチアプリケーションを製作しています。
"自分のプロセスIDと同じ名前のファイルを検索する"必要があるのですが、Javaでそのようなことができるのでしょうか。

自分のプロセスIDが"1234"だとしたら、対象ディレクトリの"1234"というファイルを検索するというようなものです。
OSはWindowsXPまたはHP/UXです。

A 回答 (2件)

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.ph …
辺りが参考になりそうです。WindowsとHP-UXのpidを取得するライブラリは自分で作成する必要がありますが。

WindowsならWin32APIのGetCurrentProcessId()
http://yokohama.cool.ne.jp/chokuto/urawaza/api/

UNIXならgetpid()システムコール
http://www.linux.or.jp/JM/html/LDP_man-pages/man …

を使って、それぞれ上記サイトの解説で出てくるlibpid.soやpid.dllを作れば、できそうです。
    • good
    • 0
この回答へのお礼

ありがとうございます。
やってみます。

お礼日時:2006/11/22 16:59

Windows XPならtasklistコマンド、HP/UXならpsコマンド


(HP/UX、さわったことないので、間違ってたらごめんなさい。)
の戻りから自身のプロセスIDが判断できれば良いんですけど…
javaのプロセスが1つのみなら簡単でしょう。
複数ある場合は「どう抽出するか。」ですね。

この回答への補足

回答ありがとうございます。

同じ名前のプロセスが同時に複数起動していて、それぞれが自分のプロセスIDと同じ名前のファイルを検索するのです・・・
tasklistやpsコマンドからの戻りでそれらを抽出するのが非常に困難(というか不可能?)で、何か良い方法はないのかと思っている次第です。
検索対象となるファイルを作成するプログラムは、psコマンドで取得したプロセスIDの名前でファイルを作成するものなので、なんとかして自分のプロセスIDを取得しなければならないのです。。。。

補足日時:2006/11/22 11:20
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!