JP5106062B2 - ファイル検索方法、ファイル検索装置、検索システム、及び、ファイル検索プログラム - Google Patents

ファイル検索方法、ファイル検索装置、検索システム、及び、ファイル検索プログラム Download PDF

Info

Publication number
JP5106062B2
JP5106062B2 JP2007301540A JP2007301540A JP5106062B2 JP 5106062 B2 JP5106062 B2 JP 5106062B2 JP 2007301540 A JP2007301540 A JP 2007301540A JP 2007301540 A JP2007301540 A JP 2007301540A JP 5106062 B2 JP5106062 B2 JP 5106062B2
Authority
JP
Japan
Prior art keywords
directory
file
application
search
searching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007301540A
Other languages
English (en)
Other versions
JP2009129067A (ja
JP2009129067A5 (ja
Inventor
峰義 増田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007301540A priority Critical patent/JP5106062B2/ja
Priority to US12/039,445 priority patent/US7831591B2/en
Publication of JP2009129067A publication Critical patent/JP2009129067A/ja
Publication of JP2009129067A5 publication Critical patent/JP2009129067A5/ja
Application granted granted Critical
Publication of JP5106062B2 publication Critical patent/JP5106062B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing

Description

本発明は、情報処理システムにおいて、アプリケーションに関連するファイルを検索する技術に関する。
一般に、情報処理システムは、複数のアプリケーションによって構成される。例えば、オンラインの商品販売システムでは、顧客からのリクエストを受け付け、在庫確認等の計算処理を実行するミドルウェアアプリケーションと、顧客情報及び商品在庫情報の保存処理を実行するデータベースアプリケーションなどを組み合わせて一つのシステムを構築する。
各アプリケーションの動作に関する種々の設定は、通常、設定ファイルと呼ばれるファイルに記録される。設定ファイルは、可読性及び編集作業の容易さから、通常はplain/text形式で記録され、バッファサイズ及びタイムアウト時間といったアプリケーションの動作に関する設定情報の他、他のアプリケーションとの接続に関連する情報などが記述される。
また、情報処理システムの動作を規定する設定ファイルの記述ミスはシステム障害に直結するため、情報処理システムの保守員にとって設定ファイルは重要な管理対象の一つである。保守員は、保守作業を円滑に進めるために、1)情報処理システム内に散在する多数の設定ファイルの配置場所、2)各設定ファイルがいずれのアプリケーションに関するものであるか、を正確に把握していなければならない。さらに、設定ファイルと同様に、ログファイル及び使用しているライブラリファイルの配置も正確に把握していることが望ましい。そこで、各種設定情報又はログ情報などを格納したファイルの格納位置情報を管理する技術が開示されている(特許文献1参照)。
特開2006−92408号公報
特許文献1に開示された技術では、各種設定ファイル及びログファイルなどは、あらかじめ格納場所が把握されていることが前提とされていた。実際には、すべてのアプリケーションで設定ファイルの配置をすべて把握しておくことは困難な場合がある。
このような場合に、アプリケーションに関連するファイルを発見する方法としては、オペレーティングシステムが提供するファイル検索機能を使う方法が挙げられる。ファイル検索機能にファイル名、ファイル拡張子、又は更新時間などの検索条件を付与し、条件に合致するファイルをファイルシステムから探し出すことができる。
ファイル検索機能は、多くのオペレーティングシステムに備わっており、また、検索条件を変更することによって目的のファイルを柔軟に検索できる利点がある。しかし、設定ファイルを過不足なく検索するためには、1)適切な検索条件を手作業で与えなければならない、2)検索した設定ファイルを手作業でアプリケーションと関連付けなければならない、といった問題点がある。さらに、これらの作業は、手作業で行う必要があり、情報処理システムを拡張するたびに同様の作業を繰り返す必要があるため、保守員に多大な負担を強いることとなる。また、アプリケーションごとに検索条件を適切に選択する必要があり、情報処理システムについての相応の知識を要する。保守作業のアウトソース化又はシステムに精通した保守員の確保が困難であるといった理由から、オペレーティングシステムの検索機能のみで保守することは現実的な手段とはいえない。
本発明は、アプリケーションごとに設定ファイルの検索条件を導出し、かつ、検索された設定ファイルとアプリケーションとを関連付け、保守員の負担を軽減することを目的とする。
本発明の代表的な一形態では、ファイル検索装置において、アプリケーションに関連するファイルを検索するファイル検索方法であって、前記ファイル検索装置は、インターフェース、前記インターフェースに接続されるプロセッサ、及び、前記プロセッサに接続される記憶部を備え、前記ファイル検索方法は、前記アプリケーションの実行開始時刻及びファイルパスを含むプロセス情報を取得し、前記取得されたファイルパスに基づいて、前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定し、前記特定されたディレクトリを起点として、前記アプリケーションの実行開始時刻以降にアクセスされたファイルを検索し、前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定する処理は、前記取得されたファイルパスに基づいて、前記アプリケーションが格納されたディレクトリよりも上層のディレクトリを親ディレクトリとし、前記親ディレクトリに作成され、前記取得されたファイルパスに含まれるディレクトリを子ディレクトリとし、前記親ディレクトリに作成され、前記子ディレクトリ以外のディレクトリを兄弟ディレクトリとし、前記子ディレクトリの作成時刻と、前記兄弟ディレクトリの作成時刻とを比較し、前記兄弟ディレクトリが、前記子ディレクトリの作成時刻から所定の時間内にすべて作成されている場合には、前記親ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、前記兄弟ディレクトリのすべてが、前記子ディレクトリの作成時刻から前記所定の時間内に作成されていない場合には、前記子ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、前記兄弟ディレクトリの一部が、前記子ディレクトリの作成時刻から前記所定の時間内に作成されている場合には、前記子ディレクトリ及び前記子ディレクトリの作成時刻から前記所定の時間内に作成された兄弟ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定する。
本発明の一形態によれば、アプリケーションに精通していない利用者であっても、アプリケーションに関連するファイルの配置場所を容易に検索することができる。
以下、本発明の実施の形態を、図面を参照して説明する。
<第1の実施の形態>
(全体構成)
図1は、本発明の第1の実施の形態の検索システムの全体構成を示すブロック図である。
本発明の第1の実施の形態の検索システムは、表示・入力部10、検索部12、記憶部14、及び、情報取得部16を含む。
表示・入力部10は、検索の対象とするアプリケーション及び計算機の指定を受け付ける。さらに、指定されたアプリケーション及び計算機の検索結果を表示する。検索部12は、ファイル検索の条件を導出し、実際にファイル検索を実行する。記憶部14は、検索処理に使用される各種表、又は、検索結果が記憶される。情報取得部16は、検索対象の計算機上で稼動するオペレーティングシステムに保持される情報、又は、オペレーティングシステムのファイルシステムの情報を取得する。
表示・入力部10に検索対象とするアプリケーションが入力されると、検索部12は、入力されたアプリケーションを構成するプロセスに関連する情報をオペレーティングシステムから収集するように情報取得部16に指示する。収集された情報は、記憶部14に記憶される。続いて、検索部12は、当該アプリケーションに関連する設定ファイルを検索するための検索条件を導出し、導出された検索条件でファイルを検索するように情報取得部16に指示する。導出される検索条件は、例えば、検索を開始する起点となるディレクトリ、及び、拡張子などの検索対象のファイルの属性に関連する条件などである。
検索されたファイルには、指定されたアプリケーションに関連する可能性を示す確度が付与され、当該ファイルのファイルパスを記憶部14に格納する。表示・入力部10は、システムの利用者に検索結果を表示する。利用者は、検索されたファイルの確度を参照し、検索対象のアプリケーションと検索されたファイルとの関連を確定する。
(ハードウェア構成)
図2は、本発明の第1の実施の形態の検索計算機のハードウェア構成を示す図である。
本発明の第1の実施の形態の検索システムでは、一又は複数の検索対象アプリケーションが実行される計算機、及び、検索計算機120として一台の計算機によって構成される。なお、検索計算機120で検索対象のアプリケーションが実行されてもよい。
検索計算機120は、CPU124、メモリ126、入力装置127、ディスプレイ128、通信インターフェース(I/F)129及びハードディスク130を備える。ハードディスク130には、オペレーティングシステム132及び検索プログラム134が格納される。
CPU124は、メモリ126に記憶されたプログラムを実行することによって、各種処理を実行する。メモリ126は、CPU124によって実行されるプログラム及び当該プログラムを実行するために必要なデータを記憶する。入力装置127は、プログラムの実行に必要な情報の入力を受け付ける。ディスプレイ128は、検索結果などを表示する。通信I/F129は、ネットワークに接続し、他の計算機と通信する。
図1に示した各部の処理は、検索プログラム134がCPU124によって実行されることによって実現される。また、記憶部14は、メモリ126及びハードディスク130によって実現される。
具体的に説明すると、検索計算機120が起動されると、ハードディスク130に記憶されたオペレーティングシステム132がメモリ126にロードされる。CPU124は、オペレーティングシステム132を実行する。また、検索プログラム134は、オペレーティングシステム132上で実行される。
図3は、本発明の第1の実施の形態の検索対象計算機122で実行されるアプリケーションの設定ファイルを検索する検索システムの構成を示す図である。
図3に示すように、検索計算機120及び検索対象計算機122は、同一のネットワーク(本発明の第1の実施の形態ではLAN)に接続されている。検索計算機120は、ネットワークを介して検索対象計算機122に保持されるファイルを検索する。
図4は、本発明の第1の実施の形態の検索対象計算機122のハードウェア構成を示す図である。
検索対象計算機122は、CPU124、メモリ126、入力装置127、ディスプレイ128、通信I/F129及びハードディスク130を備える。ハードディスク130には、検索対象計算機122を制御するオペレーティングシステム132、及び、検索対象計算機122上で実行される一つ以上のアプリケーションプログラム136が格納される。
アプリケーションプログラム136の実行ファイル、ライブラリファイル、又は設定ファイルは、オペレーティングシステム132によってツリー構造でハードディスク130に格納される。ツリー構造の例を図5に示す。
図5は、本発明の第1の実施の形態の検索システムの検索対象となるディレクトリのツリー構造の一例を示す図である。
図5に示すツリー構造は、optディレクトリに、application1ディレクトリ及びapplication2ディレクトリが作成されている。application1ディレクトリ及びapplication2ディレクトリには、それぞれに対応するアプリケーションの実行ファイル及び設定ファイルなどが格納されている。application2のアプリケーションプログラム136に対応する実行ファイルは、例えば、/opt/application2/bin/program1のディレクトリに格納されている。
また、アプリケーションプログラム136は、オペレーティングシステム132上で動作するプロセス138として実行される。
図6は、本発明の第1の実施の形態のアプリケーションのプロセス化の一例を示す図である。
図6に示すように、アプリケーションプログラム136は、CPU124によって、オペレーティングシステム132上で動作するプロセス138として実行される。図6では、アプリケーションプログラム136が単一のプロセス138として動作する場合について示しているが、複数のプロセス138によって構成されるグループとして動作する場合もある。
以降、本発明の第1の実施の形態の検索システムの各部の動作についてフローチャートを参照しながら説明する。まず、図1に示した各部の処理について説明する前に、各処理の前処理について説明する。
(前処理)
前処理では、検索計算機120が、検索対象計算機122のオペレーティングシステム上で実行されているアプリケーションを構成するプロセス138を取得する。検索対象計算機122では、実行されているプロセスを管理する情報をオペレーティングシステムが保持する。オペレーティングシステムが実行中のプロセスの情報を取得する技術は、従来技術であって、オペレーティングシステムの機能として実装されている。
前処理では、検索対象計算機122で実行されているプロセスに関する情報を検索計算機120が収集する。まず、図7を参照しながら、検索対象計算機122のオペレーティングシステムで保持されるプロセス表200について説明する。
図7は、本発明の第1の実施の形態の検索対象計算機122でオペレーティングシステム132によって管理されるプロセス138の情報を格納するプロセス表200である。
プロセス表200は、検索対象計算機122に格納される。プロセス表200は、プロセスID202、親プロセスID204、開始時刻206、実行ファイルパス208及びコマンドライン引数210を含む。
プロセスID202は、検索対象計算機122で実行されているプロセスを識別する識別子である。親プロセスID204は、当該プロセスを呼び出した親プロセスの識別子である。親プロセスが存在しない場合には、オペレーティングシステムのプロセスIDが格納される。
開始時刻206は、当該プロセスの開始時刻である。実行ファイルパス208は、当該プロセスに対応するアプリケーションプログラム136が格納されたディレクトリである。コマンドライン引数210は、当該プロセスの実行開始時に与えられた引数である。
検索計算機120は、図7に示すようなプロセス表200を検索対象計算機122から取得し、アプリケーション構成表300として格納する。
図8は、本発明の第1の実施の形態の検索対象計算機122で動作しているプロセス138の情報を収集したアプリケーション構成表300を示す図である。
アプリケーション構成表300は、検索計算機120の記憶部14に格納される。アプリケーション構成表300は、計算機インデックス301、アプリケーションインデックス302、アプリケーション名304及びプロセスID306を含む。
計算機インデックス301、アプリケーションインデックス302、アプリケーション名304及びプロセスID306を含む。
計算機インデックス301は、検索対象計算機122の識別子である。アプリケーションインデックス302は、アプリケーションを識別する識別子である。アプリケーション名304は、当該アプリケーションの名称である。プロセスID306は、当該アプリケーションを実行するプロセスの識別子である。
検索計算機120は、まず、図7に示したプロセス表200から読み出された各検索対象計算機122のプロセス情報に基づいて、アプリケーションを構成するプロセス138をグループ化し、アプリケーション構成表300に新たなエントリを作成する。
グループ化する方法としては、プロセス表200のプロセスID202及び親プロセスID204に基づいて、親子関係にあるプロセス138を一つのグループとする。又は、実行ファイルパス208を参照し、実行ファイルが同一ディレクトリにあるプロセス同士をグループ化するといった方法がある。
検索計算機120は、プロセス138のグループに対して一つのエントリがアプリケーション構成表300に作成され、同エントリにアプリケーションインデックス302、アプリケーション名304及びグループ内のすべてのプロセスID306を記録する。
(検索処理概略)
ここで、本発明の第1の実施の形態の設定ファイル検索処理の概要を説明する。
図9は、本発明の第1の実施の形態の設定ファイル検索処理の手順を示すフローチャートである。
本処理は、検索計算機120のCPU124によって検索プログラム134が処理されることによって実行される。
検索計算機120のCPU124は、アクセス時間条件を決定する(S0001)。アクセス時間条件とは、検索対象の設定ファイルがアクセスされた時間に対する条件である。例えば、検索対象の設定ファイルを利用するアプリケーションが起動されてから当該設定ファイルにアクセスされるまでの時間を指定する。
次に、検索計算機120のCPU124は、検索範囲を絞り込むために、検索の起点となるディレクトリを決定する(S0002)。なお、S0001の処理とS0002の処理は順不同である。
続いて、検索計算機120のCPU124は、S0001の処理及びS0002の処理で決定された検索条件に基づいて、ファイルシステムに対する実際の検索処理を実行し、検索条件に合致するファイル一覧を取得する(S0003)。さらに、検索されたファイルの属性を評価し、確度を算出する(S0004)。最後に、システムの利用者に対して検索されたファイルの一覧をS0004の処理で算出された確度とともに表示し、システムの利用者によって検索結果の是非の入力を受け付け、検索結果の信頼性を向上させる(S0005)。
以下、各ステップ(S0001〜S0005)の処理についてフローチャートを参照しながら詳細に説明する。
(アクセス時間条件の決定S0001)
図10は、本発明の第1の実施の形態のアクセス時間条件を決定する処理の手順を示すフローチャートである。
検索計算機120のCPU124は、まず、記憶部14に格納されたアプリケーション構成表300を読み出す。さらに、表示・入力部10によって、検索対象計算機122ごとのアプリケーション一覧をシステム利用者に提示する。
検索計算機120のCPU124は、表示されたアプリケーション一覧から検索対象とするアプリケーションの指定を、表示・入力部10を介してシステム利用者から受け付ける(S0101)。具体的には、指定されたアプリケーション及び当該アプリケーションが稼動する検索対象計算機122を入力として受け付ける。
検索計算機120のCPU124は、検索部12によって、指定された検索対象計算機122及びアプリケーションに基づいて、記憶部14に格納されたアプリケーション構成表300から、アプリケーションを構成するすべてのプロセス138を取得する。さらに、検索計算機120のCPU124は、情報取得部16を実行し、指定された検索対象計算機122で動作するオペレーティングシステム132によって管理されるプロセス表200から、アプリケーションを構成する全プロセス138の開始時刻206を取得する。そして、取得されたプロセスの開始時刻206の中で、最も古い時刻をアプリケーションの開始時刻とする(S0102)。
検索計算機120のCPU124は、検索部12を介して情報取得部16によって、指定された検索対象計算機122で動作するオペレーティングシステム132が管理するプロセス表200から、プロセスの実行ファイルパス208及びコマンドライン引数210を取得する。さらに、プロセス138の実行ファイルパスがjava(登録商標)又はperlなどのインタプリタである場合には、コマンドライン引数で指定されたファイルのパスを取得し、当該プロセスの実行ファイルパスとする(S0103)。
検索計算機120のCPU124は、検索部12を介して情報取得部16によって、検索対象計算機122のオペレーティングシステム132に問い合わせ、プロセス138の実行ファイルが記録されたファイルシステムの種別を取得する(S0104)。
検索計算機120のCPU124は、S0104の処理で取得したファイルシステムの種別に基づいた時間(例えば、マイナス1時間、必要がなければ0時間)を、S0102の処理で取得されたアプリケーションの開始時刻に加算し、アクセス時間条件とする(S0105)。ファイルシステムによっては、アクセス時間を一定時間キャッシュし、キャッシュの有効期間内ではアクセス時間が即時反映されないため、検索に用いるアクセス時間条件をキャッシュの有効期間分だけ調整する必要がある。
(アクセス時間条件の決定の変形例)
ここで、図10に示したアクセス時間条件を決定する処理の一部を変形した手順について説明する。
図11は、本発明の第1の実施の形態のアクセス時間条件を決定する処理の手順の変形例を示すフローチャートである。
図10に示した手順と相違する点は、S0105の処理をS0106の処理で置き換えた点である。他の手順については、図10に示した手順と同じである。
検索計算機120のCPU124は、S0104で取得されたファイルシステムの種別に基づいて、必要であれば情報取得部16を介して、検索対象計算機122のオペレーティングシステム132にファイルシステムの属性値キャッシュをフラッシュし、ハードディスクに書き戻すように指示する(S0106)。キャッシュの有効期間内にアクセス時間が即時反映されない場合に、キャッシュされている内容をファイルシステムに反映させることによって、アクセス時間条件の調整が不要になる。
(検索範囲ディレクトリの決定S0002)
続いて、設定ファイルを検索する範囲を決定する手順について説明する。
図12は、本発明の第1の実施の形態の設定ファイルを検索する対象のディレクトリを決定する手順を示すフローチャートである。
検索計算機120のCPU124は、情報取得部16によって、検索対象計算機122のオペレーティングシステム132に問い合わせ、検索対象アプリケーションのインストールディレクトリがオペレーティングシステム132の管理データに存在するか否かを判定する(S0201)。オペレーティングシステム132の管理データとは、Linux(登録商標)であればrpmのレコード、Windows(登録商標)であればレジストリに格納された情報である。なお、S0201の処理でインストールディレクトリの有無を判定するのは、設定ファイルがインストールディレクトリに格納される可能性が高いためである。
検索計算機120のCPU124は、管理データにインストールディレクトリが格納されていない場合には(S0201の結果が「No」)、図12のS0103の処理と同様に、アプリケーションの実行ファイルパス及びコマンドライン引数を取得する(S0202)。
検索計算機120のCPU124は、検索部12によって、検索範囲のルートディレクトリとはなり得ないと判断される除外ディレクトリを取得する(S0203)。具体的には、図13にて後述するルート除外ディレクトリ表400を、検索対象計算機122のオペレーティングシステム132の種別に基づいて、オペレーティングシステムインデックス401を特定し、該当するルート除外ディレクトリ402の一覧を取得する。
図13は、本発明の第1の実施の形態の後述するルート除外ディレクトリ表400を示す図である。
ルート除外ディレクトリ表400は、検索計算機120のメモリ126に記憶される。ルート除外ディレクトリ表400に格納されるデータは、管理者などによってあらかじめ入力される。
ルート除外ディレクトリ表400は、オペレーティングシステムインデックス401及びルート除外ディレクトリ402を含む。オペレーティングシステムインデックス401は、オペレーティングシステムの識別子である。ルート除外ディレクトリ402は、オペレーティングシステムごとに定められた検索対象から除外されるディレクトリである。
ここで、図12の設定ファイルを検索する対象のディレクトリを決定する手順の説明に戻る。
検索計算機120のCPU124は、S0202の処理で取得されたアプリケーションの実行ファイルパスと、S0203の処理で取得されたルート除外ディレクトリ402の一覧に基づいて、「親」「子」「兄弟」ディレクトリを特定する(S0204)。
親ディレクトリとは、下層にディレクトリを有するディレクトリである。本発明の第1の実施の形態では、アプリケーション実行ファイルのフルパス上にあるディレクトリであって、ルート除外ディレクトリに該当しないディレクトリである。
子ディレクトリとは、アプリケーション実行ファイルのフルパス上にあるディレクトリであって、親ディレクトリの直下に作成されたディレクトリである。兄弟ディレクトリとは、親ディレクトリの直下に作成され、アプリケーション実行ファイルのフルパス上にないディレクトリである。
親ディレクトリ、子ディレクトリ、及び兄弟ディレクトリの定義について、図14を用いて補足説明する。
図14は、本発明の第1の実施の形態の検索範囲を特定するためのディレクトリ構造を説明する図である。
図14に示すディレクトリ構造の一例において、アプリケーション実行ファイルを図中の“program1”とすると、フルパスは“/opt/A/B/bin/program1”である。また、S0203の処理で取得されたルート除外ディレクトリには、“/opt”が含まれていたものとする。
この場合、親ディレクトリは、“/opt/A/B/bin”上にあり、かつ、“/opt”の子ディレクトリである“/opt/A”となる。同様に、子ディレクトリは、“/opt/A/B”となり、兄弟ディレクトリは、“/opt/A/C”及び“/opt/A/D”となる。
ここで、図12の設定ファイルを検索する対象のディレクトリを決定する手順の説明に戻る。
検索計算機120のCPU124は、検索部12を介して情報取得部16によって、検索対象計算機122のオペレーティングシステム132から、子ディレクトリ及び兄弟ディレクトリの作成日時を取得する(S0205)。
検索計算機120のCPU124は、S0205の処理で取得された子ディレクトリ及び兄弟ディレクトリの作成日時を比較する(S0206)。
検索計算機120のCPU124は、子ディレクトリ及び兄弟ディレクトリの作成日時が一定時間内である場合には(S0206の結果が「すべて時間内」)、検索範囲ディレクトリ表500に親ディレクトリが登録されているか否かを判定する(S0207)。具体的には、検索部12によって、記憶部14に格納された検索範囲ディレクトリ表500を参照し、検索対象計算機122のインデックス及び親ディレクトリのパスに基づいて、計算機インデックス502及び起点ディレクトリ506が一致するエントリの有無を判定する。子ディレクトリ及び兄弟ディレクトリの作成日時が一定時間内である場合には、子ディレクトリを含むすべての兄弟ディレクトリが同時期に作成されているため、親ディレクトリがインストールディレクトリである可能性が高いと判断することができる。
検索範囲ディレクトリ表500に親ディレクトリが登録されているか否かを判定することは、検索範囲ディレクトリ表500に二重にアプリケーションが登録されることによって、検索時間が増大することを防ぐためである。なお、検索範囲ディレクトリ表500については、図15にて後述する。
図15は、本発明の第1の実施の形態の検索範囲ディレクトリ表500を示す図である。
検索範囲ディレクトリ表500は、設定ファイルを検索する対象の検索対象計算機122で実行されるアプリケーションごとの検索の起点ディレクトリの候補を記録する。検索範囲ディレクトリ表500は、記憶部14に格納される。
検索範囲ディレクトリ表500は、計算機インデックス502、アプリケーションインデクス504、起点ディレクトリ506及び確度508を含む。
計算機インデックス502は、検索対象計算機122の識別子である。アプリケーションインデクス504は、検索対象計算機122で実行されるアプリケーションの識別子である。起点ディレクトリ506は、設定ファイルを検索する起点となるディレクトリである。確度508は、アプリケーションと当該ディレクトリとが関連する可能性を示す値である。
ここで、図12の設定ファイルを検索する対象のディレクトリを決定する手順の説明に戻る。
検索計算機120のCPU124は、検索範囲ディレクトリ表500に親ディレクトリが登録されている場合には(S0207の結果が「Yes」)、親ディレクトリが別アプリケーションのインストールディレクトリとして登録されていることを示している。そこで、検索計算機120のCPU124は、子ディレクトリをインストールディレクトリとするように、検索範囲ディレクトリ表500に、起点ディレクトリ506を子ディレクトリとする新規エントリを作成する(S0209)。また、子ディレクトリは、インストールディレクトリである可能性が高いため、確度508には高い点数を設定する。
検索計算機120のCPU124は、検索範囲ディレクトリ表500に親ディレクトリが登録されていない場合には(S0207の結果が「No」)、検索範囲ディレクトリ表500に、起点ディレクトリ506を親ディレクトリとする新規エントリを作成する(S0208)。また、親ディレクトリは、インストールディレクトリである可能性が高いため、確度508には高い点数を設定する。
検索計算機120のCPU124は、子ディレクトリの作成日時と、他の兄弟ディレクトリの作成日時との差がすべて一定時間内にない場合には(S0206の結果が「すべて時間外」)、前述したS0209の処理を実行する。兄弟ディレクトリが別の時期に作成されているため、兄弟ディレクトリは他のアプリケーションのインストールディレクトリとなっている可能性が高いため、子ディレクトリを起点ディレクトリとする。
検索計算機120のCPU124は、子ディレクトリの作成日時と、一部の兄弟ディレクトリのみの作成日時との差がすべて一定時間内にある場合には(S0206の結果が「一部時間内」)、子ディレクトリと作成日時が一定時間内にある兄弟ディレクトリを検索範囲ディレクトリ表500に登録する。
まず、検索計算機120のCPU124は、記憶部14に格納された検索範囲ディレクトリ表500を参照し、計算機インデックス502及び起点ディレクトリ506を、検索対象計算機122のインデックス及び各兄弟ディレクトリのパスで検索し、該当するエントリの有無を調べる。既にエントリが存在する場合、当該兄弟ディレクトリは除外される(S0210)。
さらに、検索計算機120のCPU124は、検索範囲ディレクトリ表500の新規エントリを作成し、起点ディレクトリ506として子ディレクトリ、及びS0210の処理で除外されなかった兄弟ディレクトリを書き込む(S0211)。子ディレクトリは、インストールディレクトリである可能性が高いため、確度508には、高い点数を設定する。兄弟ディレクトリは、インストールディレクトリである可能性が親ディレクトリ又は子ディレクトリよりも低いため、確度508には親ディレクトリ及び子ディレクトリよりも低い点数を設定する。
検索計算機120のCPU124は、管理データにインストールディレクトリが格納されている場合には(S0201の結果が「Yes」)、検索範囲ディレクトリ表500にオペレーティングシステム132の管理データから取得されたアプリケーションのインストールディレクトリを起点ディレクトリ506とする新規エントリを作成する(S0212)。オペレーティングシステム132の管理データから得られたインストールディレクトリには、S0208、S0209、及びS0211の処理で親ディレクトリ及び子ディレクトリに対して付与された確度よりも高い点数を確度508に設定する。
(検索範囲ディレクトリの決定S0002の第1の変形例)
ここで、図12に示した検索範囲ディレクトリを決定する処理の一部を変形した手順について説明する。
図16は、本発明の第1の実施の形態の設定ファイルを検索する対象のディレクトリを決定する手順の第1の変形例を示すフローチャートである。
図12に示したフローチャートと図16に示すフローチャートとの相違点は、図12のS0205の処理が、図16ではS0305の処理に置き換わっている点である。
検索計算機120のCPU124は、親ディレクトリの全子孫ディレクトリについて作成日時の差を計算し、差が一定時間以内である子孫ディレクトリの数が、全子孫ディレクトリ数の一定割合以上であるか否かを判定する(S0305)。
検索計算機120のCPU124は、親ディレクトリの全子孫ディレクトリについて、作成日時の差が一定時間内である子孫ディレクトリ数が全子孫ディレクトリ数の一定割合以上である場合には(S0305の結果が「Yes」)、親ディレクトリがインストールディレクトリである可能性が高いと判断し、S0207の処理を実行する。
検索計算機120のCPU124は、親ディレクトリの全子孫ディレクトリについて、作成日時の差が一定時間内である子孫ディレクトリ数が全子孫ディレクトリ数の一定割合未満である場合には(S0305の結果が「No」)、前述したS0206の処理を実行する。
(検索範囲ディレクトリの決定S0002の第2の変形例)
さらに、図12に示した検索範囲ディレクトリを決定する処理の一部を変形した手順について説明する。
図17は、本発明の第1の実施の形態の設定ファイルを検索する対象のディレクトリを決定する手順の第2の変形例を示すフローチャートである。
検索計算機120のCPU124は、検索部12によって、アプリケーション構成表300から検索対象計算機122についてのすべてのエントリを取得し、検索対象計算機122で稼働している全アプリケーションを特定する(S0401)。
検索計算機120のCPU124は、検索対象計算機122のオペレーティングシステム132に保持されるプロセス表200を参照し、S0401の処理で特定されたアプリケーションごとに実行ファイルパスを特定する(S0402)。なお、S0402の処理は、図12のS0202の処理と同じであるため、説明を省略する。
検索計算機120のCPU124は、S0402の処理で取得されたアプリケーションの実行ファイルパスに基づいて、親ディレクトリを導出する(S0403)。親ディレクトリを導出する方法については、図12のS0204の処理と同じであるため、説明を省略する。導出した親ディレクトリを仮のインストールディレクトリとする。
検索計算機120のCPU124は、S0403の処理で取得された各アプリケーションのインストールディレクトリに重複が存在するか否かを判定する(S0404)。
検索計算機120のCPU124は、インストールディレクトリに重複が存在する場合には(S0404の結果が「Yes」)、インストールディレクトリが重複したアプリケーションそれぞれに対して、インストールディレクトリの重複を解消する(S0405)。
インストールディレクトリの重複を解消する手順について具体的に説明すると、まず、検索計算機120のCPU124は、現在のインストールディレクトリを起点として、実行ファイルパス上で1階層深いディレクトリを新しいインストールディレクトリとする。例えば、“/opt/A/B/C/bin/main.exe”を実行ファイルパスとし、現在のインストールディレクトリを“/opt/A”とすると、そこから1階層深いディレクトリである、“/opt/A/B”が新しいインストールディレクトリとなる。
さらに、検索計算機120のCPU124は、再度、新たに設定されたインストールディレクトリの重複が存在するか否かを判定する(S0404)。新たに設定されたインストールディレクトリも重複する場合には、再度、S0405の処理を実行してディレクトリを調整する。
検索計算機120のCPU124は、インストールディレクトリの重複が存在しない場合には(S0404の結果が「No」)、検索範囲ディレクトリ表500に、各アプリケーションのインストールディレクトリを起点ディレクトリ506とする新たなエントリを追加する(S0406)。なお、アプリケーションについてのエントリが既に存在する場合には、当該アプリケーションについてはエントリを追加しない。
本発明の第1の実施の形態では、以上のように、検索対象計算機122で実行されているアプリケーションのインストールディレクトリを取得し、設定ファイルの検索の起点ディレクトリとする。しかし、以上の手順によって設定された検索範囲が十分であるとは限らないため、検索範囲ディレクトリを修正する必要がある場合がある。そこで、検索範囲ディレクトリを表示し、修正を受け付ける画面の一例について説明する。
図18は、本発明の第1の実施の形態の検索範囲ディレクトリの表示画面の一例を示す図である。
検索範囲ディレクトリ表示画面は、検索計算機120の表示・入力部10によって表示される。検索範囲ディレクトリ表示画面は、計算機とアプリケーションの対応関係の表示部1000、及び、インストールディレクトリの入力・修正部を含む。インストールディレクトリの入力・修正部は、インストールディレクトリの入力部1001及び現在設定されているディレクトリ1002を含む。
計算機とアプリケーションの対応関係の表示部1000は、計算機上で実行されているアプリケーションの一覧を表示する。当該画面の利用者が、検索範囲ディレクトリを表示したいアプリケーションを選択すると、現在設定されているディレクトリ1002に、指定されたアプリケーションの検索範囲ディレクトリの一覧が表示される。現在設定されているディレクトリ1002には、前述した検索範囲ディレクトリの決定処理によって取得されたディレクトリが表示されるが、利用者はインストールディレクトリ入力部1001にディレクトリを手動で入力することも可能である。
(ファイル検索処理S0003)
続いて、設定ファイルを検索する手順について説明する。
図19は、本発明の第1の実施の形態のアプリケーションの設定ファイルを検索する手順を示すフローチャートである。
ファイル検索処理S0003は、S0001及びS0002の処理で決定されたファイル検索条件に基づいてファイルを検索し、検索結果を設定ファイル表600へ記録する。設定ファイル表600については、図20に一例を示す。
図20は、本発明の第1の実施の形態の設定ファイル表600を示す図である。
設定ファイル表600は、検索されたファイルごとにファイルシステムにおけるパスを記録する。設定ファイル表600は、計算機インデックス602、アプリケーションインデックス604、ファイル種別606、設定ファイルパス608、確度610、確定フラグ612及びアクセス日時614を含む。
計算機インデックス602は、アプリケーションが実行されている検索対象計算機122の識別子である。アプリケーションインデックス604は、アプリケーションの識別子である。
ファイル種別606は、当該アプリケーションによって使用される設定ファイルの種類である。例えば、システム情報などの設定情報の場合には“config”、ログ情報の場合には“log”などの値が設定される。
設定ファイルパス608は、設定ファイルのファイルパスが格納される。確度610は、記録されたファイルと当該アプリケーションとの関連の強さを示す値であって、記録されたファイルが当該アプリケーションの設定ファイルである可能性を示す値である。確定フラグ612は、記録されたファイルが当該アプリケーションの設定ファイルであることが確定したか否かを記録する。アクセス日時614は、当該設定ファイルがアクセスされた日時である。
ここで、図19のアプリケーションの設定ファイルを検索する手順の説明に戻る。
検索計算機120のCPU124は、まず、S0001の処理で決定されたファイル検索のアクセス時間条件を取得する(S0501)。さらに、S0002の処理で決定された、検索の起点となるディレクトリ一覧を検索範囲ディレクトリ表500から取得する(S0502)。
検索計算機120のCPU124は、情報取得部16によって、S0001及びS0002の処理で取得された条件に基づいて、検索対象計算機122のオペレーティングシステム132に検索要求を送信する。そして、検索結果として検索条件を満たすファイルパスのリストを取得する(S0503)。
検索計算機120のCPU124は、後述する拡張子辞書700を参照し、ファイル種別702とファイルの拡張子704との対応関係を取得する(S0504)。拡張子辞書700は、図21を参照しながら説明する。
図21は、本発明の第1の実施の形態のファイルの拡張子からファイル種別を取得するための拡張子辞書700の一例を示す図である。
拡張子辞書700は、ファイル種別702及び拡張子704を含む。ファイルの拡張子704に基づいて、ファイル種別702を特定することができる。
ここで、図19のアプリケーションの設定ファイルを検索する手順の説明に戻る。
検索計算機120のCPU124は、S0503の処理で取得されたファイルごとに、以下の処理を実行する(S0505)。
検索計算機120のCPU124は、まず、設定ファイル表600に新規エントリを追加し、計算機インデックス502に検索対象計算機122のインデックス、アプリケーションインデックス604に検索対象アプリケーションのインデックスを設定する。
検索計算機120のCPU124は、次に、ファイルの拡張子を、S0504の処理で取得されたファイルの拡張子704と比較する。一致する拡張子704が存在する場合には、対応するファイル種別702を設定ファイル表600のエントリのファイル種別606に記録する。いずれの拡張子704とも一致しない場合には、ファイル種別606に「不明」を示す情報を記録する。確度610に記録する値の計算方法は、次のステップ(S0004)にて詳述する。アクセス日時614には、現時点における当該ファイルのアクセス日時属性の値を記録する。
なお、S0503の処理とS0504の処理を同時に実行してもよい。例えば、S0504の処理で取得されるファイル拡張子のリストを、S0503の処理における検索条件に加えてファイルを検索してもよい。
(確度計算S0004)
確度計算処理(S0004)では、S0003の処理で作成された設定ファイル表600のエントリの確度610に記録する値を計算する。確度610を計算するための基準を以下に示す。
第1に、検索範囲ディレクトリ表500のエントリに含まれる確度508を初期値とする。例えば、検索範囲ディレクトリ表500に起点ディレクトリ506が“/A/B/C”であって、かつ、確度508が“10”であるエントリが含まれている。このとき、ファイル検索実行S0003の処理において、当該エントリの起点ディレクトリ、すなわち、“/A/B/C”を起点としてファイル検索を実行し、その結果、設定ファイル“/A/B/C/D/eee.conf”が検索されたとする。この場合、取得された設定ファイルの確度の初期値は、検索の起点ディレクトリである“/A/B/C”の確度、すなわち、“10”となる。
第2に、同一アプリケーションに対して複数回ファイル検索を実行し、共通して検索されたファイルの確度を高く設定する。ただし、検索時のおけるアプリケーションの起動時間が同時である場合は、同一の検索処理であるとみなす。
第3に、検索されたファイルのパスに、特定のキーワードが含まれる場合、同ファイルの確度を高く設定する。例えば、パスに“conf”又は“config”が含まれるファイルは設定ファイルである可能性が高いため、確度を高く設定する。
第4に、検索されたファイルの種別が設定ファイルであって、かつ、アクセス日時と、アプリケーション起動時刻との時間差がごく短時間である場合に、同設定ファイルの確度を高く設定する。
以下、前述した基準に基づいて、ファイルの確度を設定する手順について具体的に説明する。
図22は、本発明の第1の実施の形態の検索されたファイルの確度を計算する手順を示すフローチャートである。
検索計算機120のCPU124は、検索対象のアプリケーションの設定ファイルの検索が実行済みか否かを判定する(S0601)。以前に検索されていた場合には、設定ファイル表600に検索対象のアプリケーションに対応するエントリが存在するため、当該エントリが存在するか否かを判定すればよい。
検索計算機120のCPU124は、検索対象のアプリケーションの設定ファイルの検索が実行済みでない場合には(S0601の結果が「No」)、新たに確度を計算する(S0602)。S0602の処理では、まず、前述した第1の基準に基づいて初期値を設定し、第3の基準に基づいて確度を計算する。
S0602の処理を具体的に説明すると、まず、確度計算の対象となるファイルについて、設定ファイル表600のエントリのファイル種別606を取得する。次に、取得されたファイル種別に基づいて、確度計算キーワード表800のファイル種別802と一致する全エントリを取得する。なお、確度計算キーワード表800については、図23にて後述する。さらに、取得されたエントリのキーワード806が、確度計算対象ファイルのパスに含まれている場合、加減点804の内容に基づいて、設定ファイル表600の確度610の値を更新する。
図23は、本発明の第1の実施の形態の確度計算キーワード表800の一例を示す図である。
確度計算キーワード表800は、ファイル種別802、加減点804及びキーワード806を含む。
ファイル種別802は、確度を計算する対象のファイルの種別である。ファイル種別802は、前述のように、ファイルの拡張子と対応して定められる。
加減点804は、ファイル種別802が一致し、後述するキーワード806がファイルパスに含まれる場合に、確度に値が加算されるか減算されるかを記録する。なお、実際に加算又は減算される値そのものを設定してもよい。また、負の数を設定すれば、当該エントリに該当する場合に加減点804に設定された値を常に加算すればよい。
キーワード806は、ファイルのパスに含まれる場合に、設定ファイルである可能性が高い又は低い文字列である。
ここで、図22の設定ファイルの確度を計算する手順の説明に戻る。
検索計算機120のCPU124は、さらに、確度計算対象ファイルのアクセス日時と検索対象アプリケーションの起動時刻との差を計算し、差が一定時間以内であれば、設定ファイル表600の対応するエントリの確度610に加点する(S0603)。S0603の処理における確度計算は、前述した第4の基準に相当する。
検索計算機120のCPU124は、検索対象のアプリケーションの設定ファイルの検索が実行済みの場合には(S0601の結果が「Yes」)、検索対象のアプリケーションに対応する設定ファイル表600のエントリのアクセス日時614と、当該設定ファイルのアクセス日時を比較する(S0604)。
検索計算機120のCPU124は、設定ファイル表600に検索対象のアプリケーションに対応するエントリのアクセス日時614と、S0003の処理で検索された設定ファイルのアクセス日時が一致しない場合には(S0604の結果が「Yes」)、当該ファイルの確度610を加点する(S0605)。S0604の処理における確度計算は、前述した第2の基準に相当する。
また、検索計算機120のCPU124は、設定ファイル表600に検索対象のアプリケーションに対応するエントリのアクセス日時614と、S0003の処理で検索された設定ファイルのアクセス日時が一致する場合には(S0604の結果が「No」)、本処理を終了する。
(確度計算S0004の変形例)
ここで、図22に示したファイルの確度を計算する処理の一部を変形した手順について説明する。
図24は、本発明の第1の実施の形態の検索されたファイルの確度を計算する手順の変形例を示すフローチャートである。
図24に示す変形例では、複数の検索対象計算機122で同一のアプリケーションが実行されている場合に、各検索対象計算機122におけるファイル検索結果のうち、共通して検索されたファイルの確度を高く設定する。
検索計算機120のCPU124は、アプリケーション構成表300のアプリケーションインデックス302に基づいて、検索対象の計算機の他に検索対象のアプリケーションが実行されている計算機が存在するか否かを判定する(S0701)。該当する計算機が存在しない場合には(S0701の結果が「No」)、本処理を終了する。
検索計算機120のCPU124は、検索対象の計算機の他に検索対象のアプリケーションが実行されている計算機が存在する場合には(S0701の結果が「Yes」)、検索対象アプリケーションに対応するエントリを設定ファイル表600からすべて取得する(S0702)。
検索計算機120のCPU124は、S0702の処理で取得されたエントリに基づいて、対象の設定ファイルの確度に加算する(S0703)。なお、S0702で取得したエントリが存在しない場合には、逆に確度を減算してもよい。また、S0702の処理で取得されたエントリの確定フラグ612を参照し、確定状態であれば、対象の設定ファイルに対応するエントリの確定フラグ612も同様に確定状態とする。
(確認処理S0005)
確認処理(S0005)では、S0003の処理で検索された設定ファイルをS0004の処理で算出された確度とともにシステム利用者に提示する。さらに、システムの利用者によって検索結果の是非の入力を受け付け、検索結果の信頼性を向上させる。
以下、確認処理の手順について具体的に説明する。
図25は、本発明の第1の実施の形態の検索されたファイルの確認処理の手順を示すフローチャートである。
検索計算機120のCPU124は、まず、設定ファイル表600から、表示の範囲にあるエントリをすべて取得する(S0801)。例えば、表示する範囲が特定計算機の特定アプリケーションであれば、設定ファイル表600の計算機インデックス602及びアプリケーションインデックス604を参照し、対応するエントリを特定する。
検索計算機120のCPU124は、次に、S0801の処理で取得されたエントリの内容をシステム利用者に表示する(S0802)。表示形式は、確定フラグ612、又は、確度610の内容に応じて変更する。例えば、確定フラグ612が未確定状態であるエントリと確定状態であるエントリを分けて表示する。または、確度610の値によって表示色を変更することによって、ファイルの確度が検索システム利用者に一見して把握できるように表示する。
検索計算機120のCPU124は、検索対象のアプリケーションの設定ファイルが取得されているかについて、検索システム利用者から入力を受け付ける(S0803)。検索システム利用者は、S0802の処理によって表示された内容を参考に、必要なファイルを正しく発見できているか確認し、正しく発見されているファイルに対して確定入力(例えば、OKボタンを操作)を行う。表示・入力部10から確定入力を受け付けると、検索計算機120のCPU124は、対象のファイルの確定フラグ612を確定状態に更新する。
最後に、検索計算機120のCPU124は、確定入力対象のファイルのファイル種別606が不明であった場合には、システム利用者にファイル種別606の指定を要求する(S0804)。同時に、拡張子辞書700にエントリを作成し、指定されたファイル種別606と当該ファイルの拡張子を、それぞれファイル種別702及び拡張子704に記録する。このように処理することによって、拡張子辞書700が強化され、次回以降の検索の際に対応することができる。
図26は、本発明の第1の実施の形態のシステム利用者による確定処理の入力画面の一例を示す図である。
確定処理の入力画面は、図25に示したフローチャートのS0803の処理で表示される画面である。確定処理の入力画面の画面構成要素には、検索対象計算機122とアプリケーションの対応関係表示部1000、検索対象ファイル種別設定部1100、及び関連ファイル設定部1101を含む。
検索対象計算機122とアプリケーションの対応関係表示部1000は、検索対象計算機と当該計算機上で実行されるアプリケーションとの対応関係を表示する。
検索対象ファイル種別設定部1100は、検索対象とするファイル種別の設定部及び検索実行ボタンを含む。ファイル種別の設定部には、既定のファイル種別を表示してもよいし、指定されたアプリケーションに対する検索の結果、発見された関連ファイルの一覧が表示されてもよい。ファイルの種別は、チェックボックスで指定される。検索実行ボタンを操作すると、検索対象ファイル種別設定部1100で指定された種別のファイルを検索する。
関連ファイル設定部1101は、検索が実行された結果、発見された各ファイルに対して確定入力ボックス1102を設ける。利用者は、確定入力ボックス1102にファイルがアプリケーションに関連するか(図中では「○」で表記)、関連しないのか(同じく「×」で表記)を入力し、最後に確定ボタン1103を操作して入力内容を確定させる。
入力が確定すると、関連ファイル設定部1101には、アプリケーションに関連することが確定されたファイル、又は、確定されていないファイルが表示され、アプリケーションに関連しないことが確定されたファイルは表示されない。
図27は、本発明の第1の実施の形態の拡張子辞書700の登録画面の一例を示す図である。
拡張子辞書700の登録画面は、図25に示したフローチャートのS0804の処理で表示される。拡張子辞書700の登録画面には、関連ファイル表1200、及び、種別不明な拡張子表1201が表示される。
関連ファイル表1200には、表示指定されたアプリケーションに対するファイル検索の結果、取得されたファイルのうち、拡張子辞書700に対応する拡張子が登録されているためにファイル種別が判明しているファイルが表示される。一方、不明な拡張子表1201には、検索の結果、取得されたファイルのうち、拡張子辞書700に対応する拡張子が含まれていないものが表示される。種別不明な拡張子表1201は、ファイル種別が不明な拡張子に対してファイル種別を付与する候補となる。利用者は、種別不明な拡張子表1201から拡張子を選択し、登録可能なファイル種別一覧1202からファイル種別を選択して対応付ける。拡張子に対応するファイル種別が指定されると、当該拡張子を有するファイルを関連ファイル表1200に追記して表示する。
(複数の計算機を対象にファイル検索処理を実施する変形例)
ここまでに説明した本発明の第1の実施の形態では、検索対象計算機122ごとにファイルの検索を実行していたが、複数計算機に対するファイル検索処理をまとめて実行する手順について説明する。
図28は、本発明の第1の実施の形態の複数の計算機に格納された設定ファイルを検索する手順を示すフローチャートである。
検索計算機120のCPU124は、複数の検索対象計算機122の指定を受け付け、受け付けられた検索対象計算機122の中からファイル検索を実行していない計算機を順に選択し、ファイル検索が実行されていない計算機が存在するか否かを判定する(S1101)。ファイル検索実行の有無は、例えば、アプリケーション構成表300に当該検索対象計算機122に対応するエントリの有無で判断することができる。ファイル検索が実行されていない計算機が存在しない場合には(S1101の結果が「No」)、本処理を終了する。
検索計算機120のCPU124は、S1101の処理で選択された検索対象計算機122に対し、前述した前処理を実行し、当該検索対象計算機122で稼動するアプリケーションに関する情報を取得し、アプリケーション構成表300にエントリを作成する(S1102)。
検索計算機120のCPU124は、S1102の処理で取得されたアプリケーション(以下、「自アプリケーション」)を一つ抽出し、抽出されたアプリケーションをキーとしてアプリケーション構成表300を検索し、同種のアプリケーションが他の検索対象計算機122で実行されているか否かを判定する(S1103)。
検索計算機120のCPU124は、同種のアプリケーションが他の検索対象計算機122で実行されている場合には(S1103の結果が「Yes」)、S1103の処理で取得された、別の検索対象計算機122上で稼動する同種のアプリケーション(以下、「他アプリケーション」)に関連するファイルの一覧を設定ファイル表600から取得する。なお、同種のアプリケーションが他の検索対象計算機122で実行されている場合には、二台目以降の検索対象計算機122についてS1104の処理を実行する際には、後述するS1107の処理によって、既に当該アプリケーションを対象とするファイル検索処理が実行されている。
検索計算機120のCPU124は、さらに、ファイル一覧に含まれる各ファイルについて、検索対象計算機122においてもファイル検索条件を満たすか、すなわち、ファイルが存在するか、自アプリケーションの起動時刻以降にアクセスされているかなどをチェックする(S1104)。
検索計算機120のCPU124は、S1104の処理でチェック対象となった全ファイルのうちチェック条件を満たすファイルが一定割合以上であるか否かを評価する(S1105)。
検索計算機120のCPU124は、チェック条件を満たすファイルが一定割合以上の場合には(S1105の結果が「Yes」)、S1104の処理でチェック条件を満たすファイルそれぞれについて、設定ファイル表600にエントリを追加する(S1106)。エントリの追加は、他アプリケーションに関連するファイルについて設定ファイル表600に記録されているエントリをコピーし、コピーされたエントリの計算機インデックス602を検索対象計算機122のインデックスに書き換える。
検索計算機120のCPU124は、チェック条件を満たすファイルが一定割合以上の場合には(S1105の結果が「No」)、自アプリケーションと他アプリケーションが同種であるとした判定が誤っているものとみなす。
そこで、検索計算機120のCPU124は、同種のアプリケーションが他の検索対象計算機122で実行されていない場合(S1103の結果が「No」)、又は、検索計算機120のCPU124は、チェック条件を満たすファイルが一定割合以上の場合には(S1105の結果が「No」)、検索対象のアプリケーションに対し、前述したファイル検索処理S0003を実行する(S1107)。
検索計算機120のCPU124は、S1107の処理におけるファイル検索処理の結果に対し、確認処理S0005を実行する(S1108)。
(ファイル属性の一時保存)
ファイルシステムによっては、ファイル検索によってファイルのアクセス日時が更新される場合がある。したがって、本発明によるファイル検索では、ファイル検索によるアクセスによってアクセス日時が更新されてしまう可能性がある。このようなファイルのアクセス日時の更新を回避するために、ファイル検索を開始時に、アクセスする可能性のあるファイルの属性情報を一時的に保存し、検索処理の終了後、保存しておいたファイルのアクセス日時をファイルシステムに書き戻す処理について説明する。
図29は、本発明の第1の実施の形態の設定ファイル検索時にファイルのアクセス時刻を保持する手順を示すフローチャートである。
検索計算機120のCPU124は、アプリケーションの親ディレクトリ以下に配置されたすべてのファイル及びディレクトリの属性情報(ファイルパス、作成日時、アクセス日時など)を取得し、ファイル/ディレクトリごとに保存する(S1001)。
検索計算機120のCPU124は、S1001の処理で保存されたファイル属性情報を使用してファイル検索処理(S0002、S0003)を実行する(S1002)。
最後に、検索計算機120のCPU124は、S1001の処理で保存されたファイル/ディレクトリのアクセス日時を、元のファイルに書き戻す(S1003)。
各処理を実行するタイミングについて、さらに詳細に説明すると、ファイル属性情報の保存処理(S1001)は、ファイルに対するアクセスの直前、例えば、図12のS0204の処理の後に実行される。また、アクセス日時の書き戻し処理(S1003)は、ファイル検索処理完了後、例えば、図19のS0505の処理又は図22のS0603の処理の後に実行される。
(本発明の第1の実施の形態の効果)
本発明の第1の実施の形態によれば、アプリケーションのインストールディレクトリなどの関連するディレクトリを特定し、特定されたディレクトリから設定ファイルを検索することによって、効率的に設定ファイルを検索することができる。したがって、アプリケーションに精通していない利用者であっても、アプリケーションに関連するファイルの配置場所を容易に把握することができる。
<第2の実施の形態>
本発明の第1の実施の形態では、検索計算機に検索処理を実行するプログラムがすべて含まれていたが、本発明の第2の実施の形態では、検索処理の一部が検索対象計算機で実行される構成となっている。
図30は、本発明の第2の実施の形態の検索システムの全体構成を示すブロック図である。
本発明の第2の実施の形態の検索システムは、検索計算機で実行される検索プログラムのマネージャ900と、検索対象計算機で実行される検索プログラムのエージェント902とを含む。検索プログラム(マネージャ)900と検索プログラム(エージェント)902は、いわゆるマネージャ−エージェント構成となっている。
検索プログラムのマネージャ900は、表示・入力部10、検索部12及び記憶部14を含む。また、検索プログラムのエージェント902は、情報取得部16を含む。表示・入力部10、検索部12、記憶部14及び情報取得部16は、図1に示された本発明の第1の実施の形態と同じである。
本発明の第1の実施の形態では、表示・入力部10、検索部12、記憶部14、及び情報取得部16が単一の検索プログラムとして実装されているが、本発明の第2の実施の形態では、表示・入力部10、検索部12及び記憶部14を検索プログラム(マネージャ)900、情報取得部16を検索プログラム(エージェント)902として、機能が分割されている。
図31Aは、本発明の第2の実施の形態の検索計算機のハードウェア構成を示す図である。
本発明の第2の実施の形態の検索計算機のハードウェア構成は、本発明の第1の実施の形態の検索計算機のハードウェア構成と同じである。図30にて説明したように、ハードディスク130に記憶されている検索プログラムが、検索プログラム(マネージャ)900となる点のみである。
図31Bは、本発明の第2の実施の形態の検索対象計算機のハードウェア構成を示す図である。
本発明の第2の実施の形態の検索対象計算機のハードウェア構成は、本発明の第1の実施の形態の検索対象計算機のハードウェア構成と同じである。図30にて説明したように、ハードディスク130に、新たに検索プログラム(エージェント)902が格納される点が相違する。
なお、本発明の第2の実施の形態では、単一の検索プログラムがマネージャとエージェントに分割されたものであるため、プログラムの基本的な動作は、本発明の第1の実施の形態の場合と同様である。
(プロセス監視からのファイル検索)
本発明の第1の実施の形態では、検索システムの利用者によって検索対象のアプリケーションが指定されることを想定している。一方、本発明の第2の実施の形態では、検索対象計算機122に検索プログラム(エージェント)902が常駐するため、新規アプリケーションの起動を定期的に監視する。したがって、新規アプリケーションが起動された場合には、即座に設定ファイルの検索を開始することが可能となる。具体的な処理手順を図31に示す。
図32は、本発明の第2の実施の形態のプロセス監視によるファイル検索処理開始のフローチャートである。
検索対象計算機122のCPU124は、検索プログラム(エージェント)902を実行することによって、検索対象計算機122のオペレーティングシステム132から当該計算機で稼動しているプロセスに関する情報を定期的に取得する(S0901)。
検索対象計算機122のCPU124は、取得されたプロセス情報に基づいて、プロセスとアプリケーションとの対応関係を作成する。さらに、取得されたプロセス情報に対応するアプリケーションが、新規に起動されたアプリケーションであるか否かを判定する(S0902)。新規に起動されたアプリケーションであるか否かの判定は、アプリケーション構成表300に、当該アプリケーションに対応するエントリが登録されているか否かによって判定できる。
検索対象計算機122のCPU124は、アプリケーションが新規に起動されたものである場合には(S0902の結果が「Yes」)、検索計算機120に新規アプリケーションが起動された旨を通知し、検索の実行を依頼する(S0904)。新規アプリケーションの起動通知を受信した検索計算機120は、通知されたアプリケーションの設定ファイルを検索する処理を実行する。
検索対象計算機122のCPU124は、アプリケーションが新規に起動されたものではない場合には(S0902の結果が「No」)、アプリケーション構成表300に記録された当該アプリケーションに対応するプロセスID306の値を取得し、起動されたアプリケーションのプロセスIDと比較する(S0903)。
検索対象計算機122のCPU124は、アプリケーション構成表300から取得されたプロセスIDと起動されたアプリケーションのプロセスIDとが一致する場合には(S0903の結果が「Yes」)、アプリケーションに変更がなかったものとして本処理を終了する。一方、アプリケーション構成表300から取得されたプロセスIDと起動されたアプリケーションのプロセスIDとが相違する場合には(S0903の結果が「No」)、アプリケーションに対して何らかの変更が加えられた可能性があるため、再度ファイル検索を実行するように、検索計算機120に検索の実行を依頼する(S0904)。
なお、検索計算機120で通知されたアプリケーションを蓄積し、利用者の指示によって、蓄積されたアプリケーションに対して設定ファイルを検索するようにしてもよい。
(本発明の第2の実施の形態の効果)
本発明の第2の実施の形態によれば、検索対象計算機でアプリケーションの起動を監視することによって、利用者が定期的にアプリケーションを指定して設定ファイルを検索する必要がなく、管理コストを削減することができる。
また、本発明の第2の実施の形態によれば、構成が変更されたアプリケーションについても、検索対象計算機122によって通知されるため、常に最新の状態で設定ファイルの配置を把握することができる。
本発明は、情報処理システムを管理するソフトウェア製品、又は、情報処理システムを管理する管理装置に適用可能である。
本発明の第1の実施の形態の検索システムの全体構成を示す図である。 本発明の第1の実施の形態の検索計算機のハードウェア構成を示す図である。 本発明の第1の実施の形態の検索対象計算機で実行されるアプリケーションの設定ファイルを検索する検索システムの構成を示す図である。 本発明の第1の実施の形態の検索対象計算機の構成を示す図である。 本発明の第1の実施の形態の検索システムの検索対象となるディレクトリのツリー構造の一例を示す図である。 本発明の第1の実施の形態のアプリケーションのプロセス化の一例を示す図である。 本発明の第1の実施の形態の検索対象計算機でオペレーティングシステムによって管理されるプロセス情報を格納するプロセス表である。 本発明の第1の実施の形態の検索対象計算機で動作しているプロセスの情報を収集したアプリケーション構成表を示す図である。 本発明の第1の実施の形態の設定ファイル検索処理の手順を示すフローチャートである。 本発明の第1の実施の形態のアクセス時間条件を決定する処理の手順を示すフローチャートである。 本発明の第1の実施の形態のアクセス時間条件を決定する処理の手順の変形例を示すフローチャートである。 本発明の第1の実施の形態の設定ファイルを検索する対象のディレクトリを決定する手順を示すフローチャートである。 本発明の第1の実施の形態の後述するルート除外ディレクトリ表を示す図である。 本発明の第1の実施の形態の検索範囲を特定するためのディレクトリ構造を説明する図である。 本発明の第1の実施の形態の検索範囲ディレクトリ表を示す図である。 本発明の第1の実施の形態の設定ファイルを検索する対象のディレクトリを決定する手順の第1の変形例を示すフローチャートである。 本発明の第1の実施の形態の設定ファイルを検索する対象のディレクトリを決定する手順の第2の変形例を示すフローチャートである。 本発明の第1の実施の形態の検索範囲ディレクトリの表示画面の一例を示す図である。 本発明の第1の実施の形態の設定ファイルを検索する手順を示すフローチャートである。 本発明の第1の実施の形態の設定ファイル表を示す図である。 本発明の第1の実施の形態のファイルの拡張子からファイル種別を取得するための拡張子辞書の一例を示す図である。 本発明の第1の実施の形態の検索されたファイルの確度を計算する手順を示すフローチャートである。 本発明の第1の実施の形態の確度計算キーワード表の一例を示す図である。 本発明の第1の実施の形態の検索されたファイルの確度を計算する手順の変形例を示すフローチャートである。 本発明の第1の実施の形態の検索されたファイルの確認処理の手順を示すフローチャートである。 本発明の第1の実施の形態のシステム利用者による確定処理の入力画面の一例を示す図である。 本発明の第1の実施の形態の拡張子辞書の登録画面の一例を示す図である。 本発明の第1の実施の形態の複数の計算機に格納された設定ファイルを検索する手順を示すフローチャートである。 本発明の第1の実施の形態の設定ファイル検索時にファイルのアクセス時刻を保持する手順を示すフローチャートである。 本発明の第2の実施の形態の検索システムの全体構成を示すブロック図である。 本発明の第2の実施の形態の検索計算機のハードウェア構成を示す図である。 本発明の第2の実施の形態の検索対象計算機のハードウェア構成を示す図である。 本発明の第2の実施の形態のプロセス監視によってファイル検索処理を実行する手順のフローチャートである。
符号の説明
10 表示・入力部
12 検索部
14 記憶部
16 情報取得部
120 検索計算機
122 検索対象計算機
124 CPU
126 メモリ
127 入力装置
128 ディスプレイ
129 通信インターフェース
130 ハードディスク
132 オペレーティングシステム
134 検索プログラム
136 アプリケーションプログラム
200 プロセス表
300 アプリケーション構成表
400 ルート除外ディレクトリ表
500 検索範囲ディレクトリ表
600 設定ファイル表
700 拡張子辞書
800 確度計算キーワード表
900 検索プログラム(マネージャ)
902 検索プログラム(エージェント)

Claims (18)

  1. ファイル検索装置において、アプリケーションに関連するファイルを検索するファイル検索方法であって、
    前記ファイル検索装置は、インターフェース、前記インターフェースに接続されるプロセッサ、及び、前記プロセッサに接続される記憶部を備え、
    前記ファイル検索方法は、
    前記アプリケーションの実行開始時刻及びファイルパスを含むプロセス情報を取得し、
    前記取得されたファイルパスに基づいて、前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定し、
    前記特定されたディレクトリを起点として、前記アプリケーションの実行開始時刻以降にアクセスされたファイルを検索し、
    前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定する処理は、
    前記取得されたファイルパスに基づいて、前記アプリケーションが格納されたディレクトリよりも上層のディレクトリを親ディレクトリとし、
    前記親ディレクトリに作成され、前記取得されたファイルパスに含まれるディレクトリを子ディレクトリとし、
    前記親ディレクトリに作成され、前記子ディレクトリ以外のディレクトリを兄弟ディレクトリとし、
    前記子ディレクトリの作成時刻と、前記兄弟ディレクトリの作成時刻とを比較し、
    前記兄弟ディレクトリが、前記子ディレクトリの作成時刻から所定の時間内にすべて作成されている場合には、前記親ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、
    前記兄弟ディレクトリのすべてが、前記子ディレクトリの作成時刻から前記所定の時間内に作成されていない場合には、前記子ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、
    前記兄弟ディレクトリの一部が、前記子ディレクトリの作成時刻から前記所定の時間内に作成されている場合には、前記子ディレクトリ及び前記子ディレクトリの作成時刻から前記所定の時間内に作成された兄弟ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定することを特徴とするファイル検索方法。
  2. 前記所定の時間は、前記アプリケーションが実行されるオペレーティングシステムの種類に基づいて決定されることを特徴とする請求項1に記載のファイル検索方法。
  3. 前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定する処理は、前記親ディレクトリが、別のアプリケーションに関連するファイルを検索する起点となるディレクトリであった場合には、前記子ディレクトリを前記アプリケーションに関連するファイルを検索する起点として特定することを特徴とする請求項1に記載のファイル検索方法。
  4. 前記ファイル検索方法は、さらに、
    前記アプリケーションに関連するファイルを検索する処理を実行する前に、前記起点となるディレクトリの下層に作成されたディレクトリ及び前記下層に作成されたディレクトリに格納されたファイルのアクセス日時を取得し、
    前記取得されたアクセス日時に基づいて、前記アプリケーションに関連するファイルを検索する処理を実行し、
    前記アプリケーションに関連するファイルを検索する処理が終了すると、前記起点となるディレクトリの下層に作成されたディレクトリ及び前記下層に作成されたディレクトリに格納されたファイルのアクセス日時を、前記取得されたアクセス日時に変更することを特徴とする請求項1に記載のファイル検索方法。
  5. 前記記憶部は、前記アプリケーションが実行される計算機ごとの前記プロセス情報を含むアプリケーション構成情報を記憶し、
    前記ファイル検索方法は、
    前記アプリケーションの実行開始時刻及びファイルパスを、前記アプリケーションが実行される計算機から周期的に取得し、
    前記アプリケーションが実行される計算機から取得されたプロセス情報と、前記アプリケーション構成情報に含まれるプロセス情報とを比較することによって、新たに起動されたアプリケーションを検出し、
    前記検出されたアプリケーションに関連するファイルを検索することを特徴とする請求項1に記載のファイル検索方法。
  6. 前記ファイル検索方法は、前記アプリケーションに関連するファイルを検索する処理を実行する場合に、以前に前記アプリケーションの検索が実行された後、前記アプリケーションの起動時刻が更新されていない場合には、前記アプリケーションに関連するファイルを検索する処理を実行しないことを特徴とする請求項1に記載のファイル検索方法。
  7. 前記ファイル検索方法は、さらに、
    前記検索されたファイルごとに、前記アプリケーションに関連する可能性を示す値を付与し、
    前記アプリケーションに関連する可能性を示す値に基づいて、前記検索されたファイルを出力することを特徴とする請求項1に記載のファイル検索方法。
  8. 前記ファイル検索方法は、さらに、前記検索されたファイルが前記アプリケーションに関連するか否かを確定する入力を受け付け、
    前記検索されたファイルを出力する処理は、前記アプリケーションに関連することが確定したファイル、及び、前記アプリケーションに関連するか否かが確定していないファイルを出力することを特徴とする請求項7に記載のファイル検索方法。
  9. 前記アプリケーションに関連する可能性を示す値は、前記検索されたファイル又は前記検索されたファイルを格納するディレクトリの名前に基づいて決定されることを特徴とする請求項7に記載のファイル検索方法。
  10. 前記アプリケーションに関連する可能性を示す値は、前記検索されたファイルの拡張子に基づいて決定されることを特徴とする請求項7に記載のファイル検索方法。
  11. 前記記憶部は、ファイルの拡張子と、当該ファイルが前記アプリケーションに関連する可能性を示す値とを含む拡張子情報を記憶し、
    前記検索されたファイルを出力する処理は、前記検索されたファイルの拡張子が、前記拡張子情報に含まれるファイルと、前記拡張子情報に含まれていないファイルとを区別して出力することを特徴とする請求項10に記載のファイル検索方法。
  12. 前記ファイル検索方法は、前記検索されたファイルの拡張子が前記拡張子情報に含まれていない場合には、さらに、前記検索されたファイルの拡張子に対応する情報の入力を受け付け、前記入力された情報を前記拡張子情報に追加することを特徴とする請求項11に記載のファイル検索方法。
  13. 前記アプリケーションが実行される計算機は、新たに別のアプリケーションが起動されると、前記ファイル検索装置に新たに起動されたアプリケーションを通知し、
    前記ファイル検索方法は、前記新たに起動されたアプリケーションに関連するファイルを検索することを特徴とする請求項1に記載のファイル検索方法。
  14. 前記アプリケーションは、複数の計算機でそれぞれ実行され、
    前記ファイル検索方法は、
    前記アプリケーションが実行される計算機ごとに、前記アプリケーションに関連するファイルが検索され、
    前記アプリケーションが実行される計算機ごとの検索結果に共通するファイルを、共通しないファイルと区別して表示することを特徴とする請求項1に記載のファイル検索方法。
  15. 前記アプリケーションが実行される計算機には、前記検索されたファイルが前記アプリケーションに関連するか否かが判定された第1の計算機と、前記検索されたファイルが前記アプリケーションに関連するか否かが判定されていない第2の計算機とが含まれ、
    前記第2の計算機で検索されたファイルは、前記第1の計算機における判定結果に基づいて、前記アプリケーションに関連するか否かが判定されることを特徴とする請求項1に記載のファイル検索方法。
  16. アプリケーションに関連するファイルを検索するファイル検索装置であって、
    インターフェース、前記インターフェースに接続されるプロセッサ、及び、前記プロセッサに接続される記憶部を備え、
    前記プロセッサは、
    前記アプリケーションの実行開始時刻及びファイルパスを含むプロセス情報を取得し、
    前記取得されたファイルパスに基づいて、前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定し、
    前記特定されたディレクトリを起点として、前記アプリケーションの実行開始時刻以降にアクセスされたファイルを検索し、
    前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定する処理において、
    前記取得されたファイルパスに基づいて、前記アプリケーションが格納されたディレクトリよりも上層のディレクトリを親ディレクトリとし、
    前記親ディレクトリに作成され、前記取得されたファイルパスに含まれるディレクトリを子ディレクトリとし、
    前記親ディレクトリに作成され、前記子ディレクトリ以外のディレクトリを兄弟ディレクトリとし、
    前記子ディレクトリの作成時刻と、前記兄弟ディレクトリの作成時刻とを比較し、
    前記兄弟ディレクトリが、前記子ディレクトリの作成時刻から所定の時間内にすべて作成されている場合には、前記親ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、
    前記兄弟ディレクトリのすべてが、前記子ディレクトリの作成時刻から前記所定の時間内に作成されていない場合には、前記子ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、
    前記兄弟ディレクトリの一部が、前記子ディレクトリの作成時刻から前記所定の時間内に作成されている場合には、前記子ディレクトリ及び前記子ディレクトリの作成時刻から前記所定の時間内に作成された兄弟ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定することを特徴とするファイル検索装置。
  17. アプリケーションを実行する計算機、及び、前記アプリケーションに関連するファイルを検索するファイル検索装置を含む検索システムであって、
    前記計算機は、前記ファイル検索装置に接続される第1のインターフェース、前記第1のインターフェースに接続される第1のプロセッサ、及び、前記第1のプロセッサに接続される第1の記憶部を備え、
    前記第1の記憶部は、前記アプリケーションの実行によって生成されたプロセスに対応するプロセス情報を記憶し、
    前記ファイル検索装置は、前記計算機に接続される第2のインターフェース、前記第2のインターフェースに接続される第2のプロセッサ、及び、前記第2のプロセッサに接続される第2の記憶部を備え、
    前記計算機は、アプリケーションが起動されると、前記ファイル検索装置に起動されたアプリケーションを通知し、
    前記ファイル検索装置は、
    前記計算機から、前記プロセス情報に含まれる前記通知されたアプリケーションの実行開始時刻及びファイルパスを取得し、
    前記取得されたファイルパスに基づいて、前記通知されたアプリケーションに関連するファイルを検索する起点となるディレクトリを特定し、
    前記特定されたディレクトリを起点として、前記通知されたアプリケーションの実行開始時刻以降にアクセスされたファイルを検索し、
    前記通知されたアプリケーションに関連するファイルを検索する起点となるディレクトリを特定する処理において、
    前記取得されたファイルパスに基づいて、前記通知されたアプリケーションが格納されたディレクトリよりも上層のディレクトリを親ディレクトリとし、
    前記親ディレクトリに作成され、前記取得されたファイルパスに含まれるディレクトリを子ディレクトリとし、
    前記親ディレクトリに作成され、前記子ディレクトリ以外のディレクトリを兄弟ディレクトリとし、
    前記子ディレクトリの作成時刻と、前記兄弟ディレクトリの作成時刻とを比較し、
    前記兄弟ディレクトリが、前記子ディレクトリの作成時刻から所定の時間内にすべて作成されている場合には、前記親ディレクトリを前記通知されたアプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、
    前記兄弟ディレクトリのすべてが、前記子ディレクトリの作成時刻から前記所定の時間内に作成されていない場合には、前記子ディレクトリを前記通知されたアプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、
    前記兄弟ディレクトリの一部が、前記子ディレクトリの作成時刻から前記所定の時間内に作成されている場合には、前記子ディレクトリ及び前記子ディレクトリの作成時刻から前記所定の時間内に作成された兄弟ディレクトリを前記通知されたアプリケーションに関連するファイルを検索する起点となるディレクトリとして特定することを特徴とする検索システム。
  18. アプリケーションに関連するファイルを検索するファイル検索装置で実行されるファイル検索プログラムであって、
    前記アプリケーションの実行開始時刻及びファイルパスを含むプロセス情報を取得する手順と、
    前記取得されたファイルパスに基づいて、前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定する手順と、
    前記特定されたディレクトリを起点として、前記アプリケーションの実行開始時刻以降にアクセスされたファイルを検索する手順と、を前記ファイル検索装置に実行させ、
    前記アプリケーションに関連するファイルを検索する起点となるディレクトリを特定する前記手順は、
    前記取得されたファイルパスに基づいて、前記アプリケーションが格納されたディレクトリよりも上層のディレクトリを親ディレクトリとし、
    前記親ディレクトリに作成され、前記取得されたファイルパスに含まれるディレクトリを子ディレクトリとし、
    前記親ディレクトリに作成され、前記子ディレクトリ以外のディレクトリを兄弟ディレクトリとし、
    前記子ディレクトリの作成時刻と、前記兄弟ディレクトリの作成時刻とを比較し、
    前記兄弟ディレクトリが、前記子ディレクトリの作成時刻から所定の時間内にすべて作成されている場合には、前記親ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、
    前記兄弟ディレクトリのすべてが、前記子ディレクトリの作成時刻から前記所定の時間内に作成されていない場合には、前記子ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定し、
    前記兄弟ディレクトリの一部が、前記子ディレクトリの作成時刻から前記所定の時間内に作成されている場合には、前記子ディレクトリ及び前記子ディレクトリの作成時刻から前記所定の時間内に作成された兄弟ディレクトリを前記アプリケーションに関連するファイルを検索する起点となるディレクトリとして特定することを特徴とするファイル検索プログラム。
JP2007301540A 2007-11-21 2007-11-21 ファイル検索方法、ファイル検索装置、検索システム、及び、ファイル検索プログラム Expired - Fee Related JP5106062B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007301540A JP5106062B2 (ja) 2007-11-21 2007-11-21 ファイル検索方法、ファイル検索装置、検索システム、及び、ファイル検索プログラム
US12/039,445 US7831591B2 (en) 2007-11-21 2008-02-28 Method of searching for a file with a directory identified from a file path as a start point

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007301540A JP5106062B2 (ja) 2007-11-21 2007-11-21 ファイル検索方法、ファイル検索装置、検索システム、及び、ファイル検索プログラム

Publications (3)

Publication Number Publication Date
JP2009129067A JP2009129067A (ja) 2009-06-11
JP2009129067A5 JP2009129067A5 (ja) 2010-04-15
JP5106062B2 true JP5106062B2 (ja) 2012-12-26

Family

ID=40643014

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007301540A Expired - Fee Related JP5106062B2 (ja) 2007-11-21 2007-11-21 ファイル検索方法、ファイル検索装置、検索システム、及び、ファイル検索プログラム

Country Status (2)

Country Link
US (1) US7831591B2 (ja)
JP (1) JP5106062B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9069780B2 (en) * 2011-05-23 2015-06-30 Hewlett-Packard Development Company, L.P. Propagating a snapshot attribute in a distributed file system
US11487707B2 (en) 2012-04-30 2022-11-01 International Business Machines Corporation Efficient file path indexing for a content repository
US8914356B2 (en) 2012-11-01 2014-12-16 International Business Machines Corporation Optimized queries for file path indexing in a content repository
US9323761B2 (en) 2012-12-07 2016-04-26 International Business Machines Corporation Optimized query ordering for file path indexing in a content repository
KR101512296B1 (ko) * 2013-04-05 2015-04-15 주식회사 팬택 어플리케이션 연관 파일 처리 단말 및 단말의 어플리케이션 연관 파일 처리 방법
US9824076B2 (en) * 2014-10-14 2017-11-21 Bank Of America Coporation Big file editor

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0887432A (ja) * 1994-09-16 1996-04-02 Toshiba Corp 情報記録再生装置のデータ配置方法
JP3543683B2 (ja) * 1999-07-12 2004-07-14 日本電気株式会社 ドキュメント自動作成システム、ドキュメント自動作成方法およびドキュメント自動作成用プログラムを記録した記録媒体
JP2001043231A (ja) * 1999-07-29 2001-02-16 Toshiba Corp ファイル管理システム、電子ファイリングシステムおよびファイルの階層構造表示方法
US20050256956A1 (en) * 2004-05-14 2005-11-17 Battelle Memorial Institute Analyzing user-activity data using a heuristic-based approach
US7546601B2 (en) * 2004-08-10 2009-06-09 International Business Machines Corporation Apparatus, system, and method for automatically discovering and grouping resources used by a business process
JP4212539B2 (ja) 2004-09-27 2009-01-21 株式会社日立情報システムズ ファイル格納位置情報管理システムと方法およびそのプログラム
JP4918797B2 (ja) * 2006-03-23 2012-04-18 富士通株式会社 ファイル管理プログラム、ファイル管理装置およびファイル管理方法

Also Published As

Publication number Publication date
US7831591B2 (en) 2010-11-09
JP2009129067A (ja) 2009-06-11
US20090132472A1 (en) 2009-05-21

Similar Documents

Publication Publication Date Title
US10621211B2 (en) Language tag management on international data storage
US8392386B2 (en) Tracking file contents
JP5697754B2 (ja) 計算機システム、ファイル管理方法及びメタデータサーバ
JP5106062B2 (ja) ファイル検索方法、ファイル検索装置、検索システム、及び、ファイル検索プログラム
JP2005078612A (ja) ファイル共有システム及びファイル共有装置間のファイル移行方法
US20130066869A1 (en) Computer system, method of managing a client computer, and storage medium
JP6870466B2 (ja) 制御プログラム、制御方法、制御装置、及びデータベースサーバ
JP2009187136A (ja) 電子ファイル管理装置および電子ファイル管理方法
JP2014048673A (ja) ワークフロー生成サーバ、及び方法
US9514176B2 (en) Database update notification method
JP2009064120A (ja) 検索システム
US20130204913A1 (en) File list generation method, system, and program, and file list generation device
US11475135B2 (en) Orchestration of vulnerability scanning and issue tracking for version control technology
JP2010282241A (ja) ファイル管理装置、ファイル管理システム、ファイル管理方法、および、プログラム
JP5083408B2 (ja) 構成管理装置、構成管理プログラム、構成管理方法
JP5164673B2 (ja) サーバ装置、カタログ処理方法及びプログラム
JP7381290B2 (ja) 計算機システム及びデータの管理方法
US20200249876A1 (en) System and method for data storage management
JP6336919B2 (ja) ソースコードレビュー方法及びそのシステム
JP6688433B2 (ja) 計算機システム
JP2011081472A (ja) ドキュメント管理システム
JP2010218459A (ja) 情報処理装置、情報処理方法及びプログラム
JP2010218219A (ja) レプリカ表生成装置、レプリカ表生成方法、及びプログラム
JP2007080205A (ja) 検索装置及び検索方法
JP2010044696A (ja) プログラムライセンス管理システム及び管理方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100303

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100303

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120605

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120727

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120911

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121002

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151012

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees