JP6354501B2 - 比較プログラム、比較方法および情報処理装置 - Google Patents

比較プログラム、比較方法および情報処理装置 Download PDF

Info

Publication number
JP6354501B2
JP6354501B2 JP2014199386A JP2014199386A JP6354501B2 JP 6354501 B2 JP6354501 B2 JP 6354501B2 JP 2014199386 A JP2014199386 A JP 2014199386A JP 2014199386 A JP2014199386 A JP 2014199386A JP 6354501 B2 JP6354501 B2 JP 6354501B2
Authority
JP
Japan
Prior art keywords
comparison
file name
directory
file
txt
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.)
Active
Application number
JP2014199386A
Other languages
English (en)
Other versions
JP2016071560A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014199386A priority Critical patent/JP6354501B2/ja
Publication of JP2016071560A publication Critical patent/JP2016071560A/ja
Application granted granted Critical
Publication of JP6354501B2 publication Critical patent/JP6354501B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、比較プログラムなどに関する。
企業等で業務に利用されているシステムがリプレースされる場合、リプレースの前後で業務が継続される必要がある。このため、リプレース作業では、リプレース前の旧システムで処理された結果である出力物と、リプレース後の新システムで同じ処理対象に対して同等の処理がされる結果である出力物とを比較し、両者が一致していることを確認する作業が必要である。ここで、業務処理の結果として出力されるデータには、帳票やデータベース(DB:database)などのほかに、ログファイルなどの処理記録に関するデータも含まれる。
新旧システムにおいて、ファイル識別情報としてファイル名が一致しているファイル同士を比較対象に設定する技術が知られている(特許文献1および特許文献2参照)。
特開平5−346875号公報 特開2009−176039号公報
ところで、処理の結果として生成されたディレクトリ配下に、処理の結果として生成された複数のファイルが存在する状態で、新旧システムにおいてディレクトリを指定して比較する場合がある。かかる場合に、ファイル名が一致していない場合、新旧システムにおいて比較対象を自動的に設定することが困難であるという問題がある。
例えば、リプレースが行われる場合、旧システムから新システムに引き継がれる業務については、旧システムと同等の機能が新システムにも存在する。機能が同等であれば、処理結果として更新されるデータベース(DB:database)の内容などは同一となるはずである。
ところが、機能が同等であるとはいえ、リプレースされたのであれば当然ながらハードウェア、ソフトウェアともに何らかの変更がなされているはずである。この結果、同等の機能を実現するための細かな処理が新旧システムで異なる場合もある。この場合、複数種類のログが出力される順序は変わらなくても、出力されるタイミングが新旧システムで一致しないことが考えられる。
また、何らかの検証の際に利用されるログファイルでは、ファイル名が、出力された日時を示す数字や文字で付与されることが多い。検証時に特定の時間のログファイルを参照しやすいからである。したがって、出力されるタイミングが異なれば、新旧システムでファイル名が一致しないことが考えられる。新旧システムでファイル名が一致しない場合、比較対象を自動的に設定できない。
1つの側面では、新旧システムにおいてディレクトリ配下のファイル同士を比較する際に、ファイル名が一致していない場合であっても、比較対象を自動的に設定することを目的とする。
本願の開示する比較プログラムは、比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順に従ったソートルールの指定を受け付け、前記第一のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートした場合にN番目に対応するファイルの内容と、前記第二のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートした場合にN番目に対応するファイルの内容とを比較し、比較結果を出力する処理をコンピュータに実行させる。
1つの態様によれば、新旧システムにおいてディレクトリ配下のファイル同士を比較する際に、ファイル名が一致していない場合であっても、比較対象を自動的に設定できる。
図1は、実施例に係る情報処理装置の構成を示す機能ブロック図である。 図2は、実施例に係る比較元ファイル名テーブルのデータ構造の一例を示す図である。 図3は、実施例に係る比較先ファイル名テーブルのデータ構造の一例を示す図である。 図4は、ソートなし比較を説明する図である。 図5は、ソートあり比較を説明する図である。 図6は、ソートなし比較の具体例を示す図である。 図7は、ソートあり比較の具体例を示す図である。 図8は、実施例に係る比較処理の全体のフローチャートを示す図である。 図9Aは、ソートなし比較処理のフローチャートを示す図(1)である。 図9Bは、ソートなし比較処理のフローチャートを示す図(2)である。 図10は、ソートあり比較処理のフローチャートを示す図である。 図11は、ソートなし比較のテーブルの遷移を示す図である。 図12は、ソートあり比較のテーブルの遷移を示す図である。 図13Aは、結果出力の一例を示す図(1)である。 図13Bは、結果出力の一例を示す図(2)である。 図14は、比較プログラムを実行するコンピュータの一例を示す図である。
以下に、本願の開示する比較プログラム、比較方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、実施例によりこの発明が限定されるものではない。
[実施例に係る情報処理装置の構成]
図1は、実施例に係る情報処理装置の構成を示す機能ブロック図である。実施例に係る情報処理装置1は、2つのディレクトリ配下の複数のファイルを比較する際に、ファイル名の順に従ったソートルールにより2つのディレクトリ配下のファイルをそれぞれソートする。情報処理装置1は、2つのディレクトリ配下のファイルをそれぞれソートした結果、先頭のファイルから順に対応付け、対応付けたファイル同士を比較対象として比較処理を行う。かかる2つのディレクトリ配下の複数のファイルの比較は、例えば、システムリプレイスの場面において、現行の資産と新規の資産との比較検証をサポートする際に行われる。
図1に示すように、情報処理装置1は、制御部10および記憶部20を有する。
記憶部20は、例えばフラッシュメモリ(Flash Memory)やFRAM(登録商標)(Ferroelectric Random Access Memory)等の不揮発性の半導体メモリ素子等の記憶装置に対応する。記憶部20は、比較元ファイル群21、比較先ファイル群22、比較元ファイル名テーブル23、比較先ファイル名テーブル24および結果出力ファイル25を有する。
比較元ファイル群21は、比較元のディレクトリ配下の複数のファイルである。比較先ファイル群22は、比較先のディレクトリ配下の複数のファイルである。
比較元ファイル名テーブル23は、比較元のディレクトリ配下における複数のファイルのファイル名をそれぞれ比較先のディレクトリ配下におけるファイルとの比較結果とともに記憶する。なお、比較元ファイル名テーブル23は、後述するソートなし比較部14またはソートあり比較部15によって生成される。ここで、比較元ファイル名テーブル23のデータ構造について、図2を参照して説明する。
図2は、実施例に係る比較元ファイル名テーブルのデータ構造の一例を示す図である。図2に示すように、比較元ファイル名テーブル23は、No23a、比較元ファイル名23bおよび比較結果23cを対応付けて記憶する。No23aは、比較元ファイル名23bに対して一意に付けられる識別番号である。No23aは、例えば、1から順番にシーケンシャルに設定される。比較元ファイル名23bは、比較元のディレクトリ配下に存在する比較元ファイルのファイル名である。比較結果23cは、比較元ファイルと比較先ファイルとの比較結果を示す。比較結果23cには、例えば、差異がないことを示す「一致」、差異があることを示す「不一致」、比較対象のファイルがないことを示す「比較対象なし」が設定される。
図1に戻って、比較先ファイル名テーブル24は、比較先のディレクトリ配下における複数のファイルのファイル名をそれぞれ比較元のディレクトリ配下におけるファイルとの比較結果とともに記憶する。なお、比較先ファイル名テーブル24は、後述するソートなし比較部14またはソートあり比較部15によって生成される。ここで、比較先ファイル名テーブル24のデータ構造について、図3を参照して説明する。
図3は、実施例に係る比較先ファイル名テーブルのデータ構造の一例を示す図である。図3に示すように、比較先ファイル名テーブル24は、No24a、比較先ファイル名24bおよび比較結果24cを対応付けて記憶する。No24aは、比較先ファイル名24bに対して一意に付けられる識別番号である。No24aは、例えば、1から順番にシーケンシャルに設定される。比較先ファイル名24bは、比較先のディレクトリ配下に存在する比較先ファイルのファイル名である。比較結果24cは、比較先ファイルと比較元ファイルとの比較結果を示す。比較結果24cに設定される内容は、比較元ファイル名テーブル23の比較結果23cと同様であるので、その説明を省略する。
図1に戻って、結果出力ファイル25は、比較元のディレクトリおよび比較先のディレクトリ毎に、比較結果、比較ファイル数、不一致ファイル数および比較ファイル選択ルールを対応付けて記憶する。比較結果は、ディレクトリ内の複数のファイルにおけるトータルの比較結果のことをいう。比較ファイル数は、ディレクトリ内の比較処理により比較されたファイルの数のことをいう。不一致ファイル数は、ディレクトリ内の不一致となったファイルの数のことをいう。比較ファイル選択ルールは、比較元および比較先のそれぞれのディレクトリ内のファイル同士の突合せルールのことをいう。
ファイル同士の突合せルールには、一例として、ファイルをファイル名で昇順にソートした結果先頭のファイルから順に突き合わせるという「ファイル名昇順」、ファイルをファイル名で降順にソートした結果先頭のファイルから順に突き合わせるという「ファイル名降順」がある。また、比較ファイル選択ルールには、別の例として、ファイル名が一致したファイル同士を突き合わせるという「ファイル名一致」がある。なお、結果出力ファイル25の一例は、後述するものとする。
制御部10は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。そして、制御部10は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路の電子回路に対応する。または、制御部10は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路に対応する。さらに、制御部10は、入力部11、初期化部12、判定部13、ソートなし比較部14、ソートあり比較部15および結果出力部16を有する。なお、入力部11は、受付部の一例である。ソートあり比較部15は、比較部の一例である。結果出力部16は、出力部の一例である。
入力部11は、比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順に従ったソートルールを受け付ける。ソートルールには、ファイル同士の突合せルールの一例である「ファイル名昇順」、「ファイル名降順」がある。なお、ソートルールが省略された場合には、ファイル同士の突合せルールは、デフォルトとして「ファイル名一致」であるものとする。
例えば、入力部11は、比較コマンドの入力を受け付ける。比較コマンドは、比較コマンド名のほか、引数として、比較元ディレクトリ名、比較先ディレクトリ名を含む。さらに結果出力先を含んでもよい。比較コマンド名は、あらかじめ定められた比較処理に係るコマンドの名称である。比較元ディレクトリ名は、比較元ファイル群21のディレクトリの名称である。比較先ディレクトリ名は、比較先ファイル群22のディレクトリの名称である。結果出力先は、比較結果ファイル25の出力先のディレクトリである。さらに、比較コマンドは、ソートルールが指定される場合、オプションの引数として、ソートルールがわかる符号を含むものとする。ソートルールがわかる符号は、一例として、「ファイル名昇順」の場合には「−s」、「ファイル名降順」の場合には「−k」を用いることができる。
初期化部12は、比較コマンドを実行するために用いられる制御データや変数を初期化する。初期化部12は、比較コマンドを解析する。なお、初期化部12は、比較コマンドの引数のチェックを行っても良い。
判定部13は、初期化部12の解析の結果、比較コマンドのオプションにソートルールの指定があるか否かを判定する。判定部13は、比較コマンドのオプションにソートルールの指定がない場合には、後述するソートなし比較部14に、ディレクトリ配下の複数のファイルをソートしないで比較処理を実行させる。また、判定部13は、比較コマンドのオプションにソートルールの指定がある場合には、後述するソートあり比較部15に、ディレクトリ配下の複数のファイルをソートしたうえで比較処理を実行させる。
ソートなし比較部14は、ディレクトリ配下の複数のファイルをソートしないで比較処理を実行する。すなわち、ソートなし比較部14は、比較元ディレクトリの配下に含まれる複数のファイルおよび比較先ディレクトリの配下に含まれる複数のファイルに対して、ファイル名が一致したファイル同士を突き合わせて比較処理を実行する。そして、ソートなし比較部14は、比較元ファイル名テーブル23に、比較元ディレクトリの配下に含まれるファイル毎にファイル名と比較結果を格納する。ソートなし比較部14は、比較先ファイル名テーブル24に、比較先ディレクトリの配下に含まれるファイル毎にファイル名と比較結果を格納する。なお、ファイル同士の比較処理は、例えば、ファイル同士の比較を行うための「diffコマンド」のアルゴリズムを用いれば良いが、これに限定されず、いかなる既知の技術を用いても良い。また、ソートなし比較部14の詳細については後述する。
ここで、ソートなし比較について、図4を参照して説明する。図4は、ソートなし比較を説明する図である。図4に示すように、比較元ディレクトリ(ディレクトリA)の配下に「111.txt」、「222.txt」、「333.txt」のファイルが含まれている。比較先ディレクトリ(ディレクトリB)の配下に「222.txt」、「333.txt」、「444.txt」のファイルが含まれている。
このような状況の下、ソートなし比較部14は、比較元ディレクトリに含まれる「111.txt」というファイル名が比較先ディレクトリに含まれないので、比較処理の処理結果を比較対象なしとする。ソートなし比較部14は、比較元ディレクトリに含まれる「222.txt」というファイル名が比較先ディレクトリに含まれるので、「222.txt」のファイル名同士の比較処理を実行する。ソートなし比較部14は、比較元ディレクトリに含まれる「333.txt」というファイル名が比較先ディレクトリに含まれるので、「333.txt」のファイル名同士の比較処理を実行する。ソートなし比較部14は、比較先ディレクトリに含まれる「444.txt」というファイル名が比較元ディレクトリに含まれないので、比較処理の処理結果を比較対象なしとする。
図1に戻って、ソートあり比較部15は、ディレクトリ配下の複数のファイルをソートしたうえで比較処理を実行する。すなわち、ソートあり比較部15は、比較元ディレクトリの配下に含まれる複数のファイルをソートルールに従ってソートし、比較先ディレクトリの配下に含まれる複数のファイルをソートルールに従ってソートする。そして、ソートあり比較部15は、ソートした結果の比較元ディレクトリに含まれる複数のファイルおよび比較先ディレクトリに含まれる複数のファイルに対して、先頭のファイルから順に突き合わせて、比較処理を実行する。つまり、ソートあり比較部15は、ソートした結果、比較元ディレクトリの1番目のファイルの内容と比較先ディレクトリの1番目のファイルの内容とを比較する。ソートあり比較部15は、ソートした結果、比較元ディレクトリのN番目のファイルの内容と比較先ディレクトリのN番目のファイルの内容とを比較する。そして、ソートあり比較部15は、比較元ファイル名テーブル23に、比較元ディレクトリの配下に含まれるファイル毎にファイル名と比較結果を格納する。ソートあり比較部15は、比較先ファイル名テーブル24に、比較先ディレクトリの配下に含まれるファイル毎にファイル名と比較結果を格納する。なお、ファイル同士の比較処理は、例えば、ファイルの比較を行うための「diffコマンド」のアルゴリズムを用いれば良いが、これに限定されず、いかなる既知の技術を用いても良い。また、ソートあり比較部15の詳細については後述する。
ここで、ソートあり比較について、図5を参照して説明する。図5は、ソートあり比較を説明する図である。なお、ソートルールは、「ファイル名昇順」であるとする。図5に示すように、ソートあり比較部15は、比較元ディレクトリ(ディレクトリA)の配下に含まれる複数のファイルをソートルールであるファイル名昇順に従ってソートする。ここでは、比較元ディレクトリ(ディレクトリA)の配下に「111.txt」、「222.txt」、「333.txt」のようにファイルがソートされたものとする。また、ソートあり比較部15は、比較先ディレクトリ(ディレクトリB)の配下に含まれる複数のファイルをソートルールであるファイル名昇順に従ってソートする。ここでは、比較先ディレクトリ(ディレクトリB)の配下に「222.txt」、「333.txt」、「444.txt」のようにファイルがソートされたものとする。
このような状況の下、ソートあり比較部15は、ソートした結果、比較元ディレクトリの1番目のファイル「111.txt」の内容と比較先ディレクトリの1番目のファイル「222.txt」の内容とを比較する。ソートあり比較部15は、ソートした結果、比較元ディレクトリの2番目のファイル「222.txt」の内容と比較先ディレクトリの2番目のファイル「333.txt」の内容とを比較する。ソートあり比較部15は、ソートした結果、比較元ディレクトリの3番目のファイル「333.txt」の内容と比較先ディレクトリの3番目のファイル「444.txt」の内容とを比較する。
図1に戻って、結果出力部16は、ソートなし比較部14またはソートあり比較部15により生成された比較元ファイル名テーブル23および比較先ファイル名テーブル24を用いて、ディレクトリ配下のファイルの比較結果のサマリを出力する。比較結果のサマリは、比較コマンドの結果出力先の結果出力ファイル25に出力される。
[ソートなし比較、ソートあり比較の具体例]
図6は、ソートなし比較の具体例を示す図である。図7は、ソートあり比較の具体例を示す図である。図6および図7に示すように、比較元ファイル群21には、比較元ディレクトリ「Old」の配下に「A.txt」、「B.txt」、「X.txt」のファイルが含まれている。比較元ディレクトリ「20140828」の配下に「0828a.txt」、「0828b.txt」、「0828c.txt」のファイルが含まれている。比較先ファイル群22には、比較先ディレクトリ「New」の配下に「A.txt」、「B.txt」、「Y.txt」のファイルが含まれている。比較先ディレクトリ「20140901」の配下に「0901a.txt」、「0901b.txt」、「0901c.txt」、「0901z.txt」のファイルが含まれている。
このような状況の下、入力部11は、比較元ディレクトリとして「Old」、比較先ディレクトリとして「New」、ソートルールは未指定である比較コマンドを受け取るとする。
すると、図6に示すように、ソートなし比較部14は、比較元ディレクトリ「Old」に含まれるファイル「A.txt」というファイル名が比較先ディレクトリ「New」に含まれるので、「A.txt」のファイル名同士の比較処理を実行する。ここでは、「¥Old¥A.txt」のデータと「¥New¥A.txt」のデータが一致している。そこで、ソートなし比較部14は、比較元ファイル名テーブル23の「A.txt」に対応する比較結果23cに「一致」を設定する。ソートなし比較部14は、比較先ファイル名テーブル24の「A.txt」に対応する比較結果24cに「一致」を設定する。
次に、ソートなし比較部14は、比較元ディレクトリ「Old」に含まれるファイル「B.txt」というファイル名が比較先ディレクトリ「New」に含まれるので、「B.txt」のファイル名同士の比較処理を実行する。ここでは、「¥Old¥B.txt」のデータと「¥New¥B.txt」のデータのうち1行目が一致していない。そこで、ソートなし比較部14は、比較元ファイル名テーブル23の「B.txt」に対応する比較結果23cに「不一致」を設定する。ソートなし比較部14は、比較先ファイル名テーブル24の「B.txt」に対応する比較結果24cに「不一致」を設定する。
次に、ソートなし比較部14は、比較元ディレクトリ「Old」に含まれるファイル「X.txt」というファイル名が比較先ディレクトリ「New」に含まれないので、比較処理を実行しない。そこで、ソートなし比較部14は、比較元ファイル名テーブル23の「X.txt」に対応する比較結果23cに「比較対象なし」を設定する。
さらに、ソートなし比較部14は、比較先ディレクトリ「New」に含まれるファイル「Y.txt」というファイル名が比較元ディレクトリ「Old」に含まれないので、比較処理を実行しない。そこで、ソートなし比較部14は、比較先ファイル名テーブル24の「Y.txt」に対応する比較結果24cに「比較対象なし」を設定する。
これに対して、入力部11は、比較元ディレクトリとして「20140828」、比較先ディレクトリとして「20140901」、ソートルールとして「ファイル名昇順」である比較コマンドを受け取るとする。
すると、図7に示すように、ソートあり比較部15は、比較元ディレクトリ「20140828」の配下に含まれる複数のファイルをソートルールであるファイル名昇順に従ってソートする。ここでは、比較元ディレクトリ「20140828」の配下に「0828a.txt」、「0828b.txt」、「0828c.txt」のようにファイルがソートされたものとする。ソートあり比較部15は、比較先ディレクトリ「20140901」の配下に含まれる複数のファイルをソートルールであるファイル名昇順に従ってソートする。ここでは、比較先ディレクトリ「20140901」の配下に「0901a.txt」、「0901b.txt」、「0901c.txt」、「0901z.txt」のようにファイルがソートされたものとする。
ソートあり比較部15は、ソートした結果、比較元ディレクトリの1番目のファイル「0828a.txt」の内容と比較先ディレクトリの1番目のファイル「0901a.txt」の内容を比較する。ここでは、「¥20140828¥0828a.txt」のデータと「¥20140901¥0901a.txt」のデータが一致している。そこで、ソートあり比較部15は、比較元ファイル名テーブル23の「0828a.txt」に対応する比較結果23cに「一致」を設定する。ソートあり比較部15は、比較先ファイル名テーブル24の「0901a.txt」に対応する比較結果24cに「一致」を設定する。
次に、ソートあり比較部15は、ソートした結果、比較元ディレクトリの2番目のファイル「0828b.txt」の内容と比較先ディレクトリの2番目のファイル「0901b.txt」の内容を比較する。ここでは、「¥20140828¥0828b.txt」のデータと「¥20140901¥0901b.txt」のデータが一致している。そこで、ソートあり比較部15は、比較元ファイル名テーブル23の「0828b.txt」に対応する比較結果23cに「一致」を設定する。ソートあり比較部15は、比較先ファイル名テーブル24の「0901b.txt」に対応する比較結果24cに「一致」を設定する。
次に、ソートあり比較部15は、ソートした結果、比較元ディレクトリの3番目のファイル「0828c.txt」の内容と比較先ディレクトリの3番目のファイル「0901c.txt」の内容を比較する。ここでは、「¥20140828¥0828c.txt」のデータと「¥20140901¥0901c.txt」のデータのうち1行目のデータが一致していない。そこで、ソートあり比較部15は、比較元ファイル名テーブル23の「0828c.txt」に対応する比較結果23cに「不一致」を設定する。ソートあり比較部15は、比較先ファイル名テーブル24の「0901c.txt」に対応する比較結果24cに「不一致」を設定する。
さらに、ソートあり比較部15は、ソートした結果、比較元ディレクトリの4番目のファイルの内容と比較先ディレクトリの4番目のファイル「0901z.txt」の内容を比較しようとする。ところが、ソートあり比較部15は、比較元ディレクトリ「20140828」の4番目のファイルが存在しないので、比較処理を実行しない。そこで、ソートあり比較部15は、比較先ファイル名テーブル24の「0901z.txt」に対応する比較結果24cに何も設定しない。なお、ソートあり比較部15は、かかる場合に、対応する比較結果24cに「比較対象なし」を設定するようにしても良い。
[比較処理の全体のフローチャート]
次に、実施例に係る比較処理の全体のフローチャートを、図8を参照して説明する。図8は、実施例に係る比較結果の全体のフローチャートを示す図である。
図8に示すように、入力部11は、比較コマンドの入力を受け付ける(ステップS11)。初期化部12は、比較コマンドを実行するために用いられる各種データを初期化する(ステップS12)。初期化部12は、比較コマンドの引数を解析する(ステップS13)。初期化部12は、比較コマンドのオプションを解析する(ステップS14)。
そして、判定部13は、比較コマンドのオプションにソートルールの指定があるか否かを判定する(ステップS15)。ソートルールの指定がないと判定した場合には(ステップS15;No)、ソートなし比較部14は、ソートなし比較処理を実行する(ステップS16)。なお、ソートなし比較処理のフローチャートは、後述する。そして、ソートなし比較部14は、比較結果のサマリを出力すべく、ステップS20に移行する。
一方、ソートルールの指定があると判定した場合には(ステップS15;Yes)、ソートあり比較部15は、ソートルールの指定が「ファイル名降順」であるか否かを判定する(ステップS17)。ソートルールの指定が「ファイル名降順」であると判定した場合には(ステップS17;Yes)、ソートあり比較部15は、降順フラグを、例えば記憶部20の一時領域に設定し(ステップS18)、ソートあり比較処理をすべく、ステップS19に移行する。
一方、ソートルールの指定が「ファイル名降順」でないと判定した場合には(ステップS17;No)、ソートあり比較部15は、ソートあり比較処理をすべく、ステップS19に移行する。ステップS19では、ソートあり比較部15は、ソートあり比較処理を実行する(ステップS19)。なお、ソートあり比較処理のフローチャートは、後述する。そして、ソートあり比較部15は、比較結果のサマリを出力すべく、ステップS20に移行する。
ステップS20では、結果出力部16は、指定された比較元ディレクトリおよび比較先ディレクトリ配下のファイルについて、比較結果のサマリを出力する(ステップS20)。
[ソートなし比較処理のフローチャート]
次に、ソートなし比較処理のフローチャートを、図9Aおよび図9Bを参照して説明する。図9Aおよび図9Bは、ソートなし比較結果のフローチャートを示す図である。なお、以下では、図6に示される比較元ファイル群21および比較先ファイル群22を使用して説明する。また、以下では、図11に示される比較元ファイル名テーブル23、比較先ファイル名テーブル24および一時的に用いられる比較ペアファイル名テーブルを適宜使用しながら説明する。
ここでは、比較コマンドの引数は、比較元ディレクトリとして「Old」、比較先ディレクトリとして「New」、ソートルールとして未指定であるとする。
図9に示すように、ソートなし比較部14は、記憶部20の各テーブルを初期化する(ステップS21)。ここでいうテーブルは、比較元ファイル名テーブル23、比較先ファイル名テーブル24および比較ペアファイル名テーブルのことをいう。
ソートなし比較部14は、比較元ディレクトリ内に存在する全ファイルの名称を取得し、比較元ファイル名テーブル23の比較元ファイル名23bの列に設定し(ステップS22)、ファイル数をO1とする。ここでは、ソートなし比較部14は、比較元ディレクトリ「Old」から全ファイルの名称を取得する。ソートなし比較部14は、比較元ファイル名テーブル23について、No23a列に「1」、「2」、「3」および比較元ファイル名23b列に「B.txt」、「A.txt」、「X.txt」を設定する(図11第1段目)。
ソートなし比較部14は、比較先ディレクトリ内に存在する全ファイルの名称を取得し、比較先ファイル名テーブル24の比較先ファイル名24bの列に設定し(ステップS23)、ファイル数をO2とする。ここでは、ソートなし比較部14は、比較先ディレクトリ「New」から全ファイルの名称を取得する。ソートなし比較部14は、比較先ファイル名テーブル24について、No24a列に「1」、「2」、「3」および比較先ファイル名24b列に「A.txt」、「B.txt」、「Y.txt」を設定する(図11第2段目)。
ソートなし比較部14は、比較元ファイル名テーブル23を用いて比較ペアファイル名テーブルの比較元ファイル名欄に設定する(ステップS24)。ここでは、ソートなし比較部14は、比較ペアファイル名テーブルについて、No列に「1」、「2」、「3」および比較元ファイル名欄に「B.txt」、「A.txt」、「X.txt」を設定する(図11第3段目)。
ソートなし比較部14は、比較先ファイル名テーブル24のNo「1」を変数nに設定する(ステップS25)。ソートなし比較部14は、比較元ファイル名のファイル数のO1+1を変数pに設定する(ステップS26)。
ソートなし比較部14は、比較先ファイル名テーブル24のNo24aが変数nの値である行の比較先ファイル名24bを取得する(ステップS27)。ここでは、取得された比較先ファイル名をF1とする。ソートなし比較部14は、比較ペアファイル名テーブルのNo「1」を変数mに設定する(ステップS28)。
ソートなし比較部14は、比較ペアファイル名テーブルのNoが変数mの値である行の比較元ファイル名を取得する(ステップS29)。ここでは、取得された比較元ファイル名をF2とする。そして、ソートなし比較部14は、比較先ファイル名テーブル24から取得された比較先ファイル名F1と比較ペアファイル名テーブルから取得された比較元ファイル名F2とが一致するか否かを判定する(ステップS30)。
F1とF2とが一致しないと判定した場合には(ステップS30;No)、ソートなし比較部14は、比較ペアファイル名テーブルの次のNoを指すべく、変数mを1加算する(ステップS31)。そして、ソートなし比較部14は、比較ペアファイル名テーブルのNoを示す変数mが比較元ファイル名のファイル数を示すO1より大きいか否かを判定する(ステップS32)。
変数mがO1より大きくないと判定した場合には(ステップS32;No)、ソートなし比較部14は、比較ペアファイル名テーブルの次の比較元ファイル名を取得すべく、ステップS29に移行する。
ステップS30において、F1とF2とが一致すると判定した場合には(ステップS30;Yes)、ソートなし比較部14は、比較ペアファイル名テーブルのNoが変数mの値である行の比較先ファイル名列に、F1を設定する(ステップS33)。ここでは、F1が比較先ファイル名「A.txt」である場合に、比較ペアファイル名テーブルの2行目の比較先ファイル名欄に「A.txt」が設定される(図11第4段)。F1が比較先ファイル名「B.txt」である場合に、比較ペアファイル名テーブルの1行目の比較先ファイル名欄に「B.txt」が設定される(図11第4段)。そして、ソートなし比較部14は、比較先ファイル名テーブル24の次の比較先ファイルのファイル名判定をすべく、ステップS35に移行する。
一方、変数mがO1より大きいと判定した場合には(ステップS32;Yes)、ソートなし比較部14は、比較ペアファイル名テーブルのNoが変数pの値である行の比較先ファイル名欄に、F1を設定する(ステップS33A)。ここでは、F1が比較先ファイル名「Y.txt」である場合に、比較ペアファイル名テーブルの4行目の比較先ファイル名欄に「Y.txt」が設定される(図11第4段)。そして、ソートなし比較部14は、比較ペアファイル名テーブルの次のNoを指すべく、変数pを1加算する(ステップS34)。そして、ソートなし比較部14は、比較先ファイル名テーブル24の次の比較先ファイルのファイル名判定をすべく、ステップS35に移行する。
ステップS35では、ソートなし比較部14は、比較先ファイル名テーブル24の次のNoを指すべく、変数nを1加算する(ステップS35)。ソートなし比較部14は、比較先ファイル名テーブル23のNoを示す変数nが比較先ファイル名のファイル数を示すO2より大きいか否かを判定する(ステップS36)。
変数nがO2より大きくないと判定した場合には(ステップS36;No)、ソートなし比較部14は、比較先ファイル名テーブル24の次の比較先ファイル名を取得すべく、ステップS27に移行する。
一方、変数nがO2より大きいと判定した場合には(ステップS36;Yes)、ソートなし比較部14は、比較先ファイル名テーブル24の全ファイルについて、比較元ファイルとのファイル名判定を終了する。この結果、ファイル名判定の結果は、比較ペアファイル名テーブルに記憶されている。
続いて、ソートなし比較部14は、比較ペアファイル名テーブルのNo「1」を変数kに設定する(ステップS37)。
ソートなし比較部14は、比較ペアファイル名テーブルのNoが変数kの値である行の比較元ファイル名をF1に、比較先ファイル名をF2に設定する(ステップS38)。ソートなし比較部14は、F2にファイル名が設定されていないかどうかを判定する(ステップS39)。F2にファイル名が設定されていないと判定した場合には(ステップS39;Yes)、ソートなし比較部14は、(比較元のF1は)「比較対象なし」を、比較元ファイル名テーブル23のF1に対応する比較結果23cの欄に設定する(ステップS40)。ここでは、変数kが3の場合、比較元ファイル名のF1に「X.txt」が設定されているが、比較先ファイル名のF2にファイル名が設定されていない。したがって、比較元ファイル名テーブル23の「X.txt」に対応する比較結果23cに「比較対象なし」が設定される(図11第5段)。そして、ソートなし比較部14は、比較ペアファイル名テーブルの次のNoに進むべく、ステップS45に移行する。
一方、F2にファイル名が設定されていると判定した場合には(ステップS39;No)、ソートなし比較部14は、F1にファイル名が設定されていないかどうかを判定する(ステップS41)。F1にファイル名が設定されていないと判定した場合には(ステップS41;Yes)、ソートなし比較部14は、(比較先のF2は)「比較対象なし」を、比較先ファイル名テーブル24のF2に対応する比較結果24cの欄に設定する(ステップS42)。ここでは、変数kが4の場合、比較先ファイル名のF2に「Y.txt」が設定されているが、比較元ファイル名のF1にファイル名が設定されていない。したがって、比較先ファイル名テーブル24の「Y.txt」に対応する比較結果24cに「比較対象なし」が設定される(図11第5段)。そして、ソートなし比較部14は、比較ペアファイル名テーブルの次のNoに進むべく、ステップS45に移行する。
一方、F1にファイル名が設定されていると判定した場合には(ステップS41;No)、ソートなし比較部14は、比較元ディレクトリ内の該ファイル(F1)の内容と、比較先ディレクトリ内の該ファイル(F2)の内容とを比較する(ステップS43)。そして、ソートなし比較部14は、比較結果を、F1、F2に対応する比較結果欄に設定する(ステップS44)。すなわち、ソートなし比較部14は、比較結果を、比較元ファイル名テーブル23のF1に対応する比較結果23cに設定し、比較結果を、比較先ファイル名テーブル24のF2に対応する比較結果24cに設定する。そして、ソートなし比較部14は、比較ペアファイル名テーブルの次のNoに進むべく、ステップS45に移行する。
ステップS45では、ソートなし比較部14は、比較ペアファイル名テーブルの次のNoを指すべく、変数kを1加算する(ステップS45)。そして、ソートなし比較部14は、変数kが変数pより小さいか否かを判定する(ステップS46)。変数kが変数pより小さいと判定した場合には(ステップS46;Yes)、ソートなし比較部14は、比較ペアファイル名テーブルの次のNoの処理をすべく、ステップS38に移行する。
一方、変数kが変数pより小さくないと判定した場合には(ステップS46;No)、ソートなし比較部14は、ソートなし比較処理を終了する。
[ソートあり比較処理のフローチャート]
次に、ソートあり比較処理のフローチャートを、図10を参照して説明する。図10は、ソートあり比較結果のフローチャートを示す図である。なお、以下では、図7に示される比較元ファイル群21および比較先ファイル群22を使用して説明する。また、以下では、図12に示される比較元ファイル名テーブル23および比較先ファイル名テーブル24を適宜使用しながら説明する。
ここでは、比較コマンドの引数は、比較元ディレクトリとして「20140828」、比較先ディレクトリとして「20140901」、ソートルールとして「ファイル名昇順」であるとする。
図10に示すように、ソートあり比較部15は、記憶部20の各テーブル、フラグを初期化する(ステップS51)。ここでいうテーブルは、比較元ファイル名テーブル23および比較先ファイル名テーブル24のことをいう。ここでいうフラグは、例えば降順フラグのことをいう。
ソートあり比較部15は、比較元ディレクトリ内に存在する全ファイルの名称を取得し、比較元ファイル名テーブル23の比較元ファイル名23bの列に設定する(ステップS52)。ソートあり比較部15は、比較元ファイル名テーブル23のレコード数をOとする(ステップS53)。ここでは、ソートあり比較部15は、比較元ディレクトリ「20140828」から全ファイルの名称を取得する。ソートあり比較部15は、比較元ファイル名テーブル23について、No23a列に「1」、「2」、「3」および比較元ファイル名23b列に「0828c.txt」、「0828b.txt」、「0828a.txt」を設定する(図12第1段目左)。
ソートあり比較部15は、比較先ディレクトリ内に存在する全ファイルの名称を取得し、比較先ファイル名テーブル24の比較先ファイル名24bの列に設定する(ステップS54)。ソートあり比較部15は、比較先ファイル名テーブル24のレコード数をTとする(ステップS55)。ここでは、ソートあり比較部15は、比較先ディレクトリ「20140901」から全ファイルの名称を取得する。ソートあり比較部15は、比較先ファイル名テーブル24について、No24a列に「1」、「2」、「3」、「4」および比較先ファイル名24b列に「0901z.txt」、「0901c.txt」、「0901b.txt」、「0901a.txt」を設定する(図12第1段目右)。
ソートあり比較部15は、降順フラグを例えば記憶部20の一時領域から読み込む(ステップS56)。ソートあり比較部15は、降順フラグが設定されているか否かを判定する(ステップS57)。
降順フラグが設定されていないと判定した場合には(ステップS57;No)、ソートあり比較部15は、比較元ファイル名テーブル23および比較先ファイル名テーブル24それぞれをファイル名昇順にソートする(ステップS58)。そして、ソートあり比較部15は、ソート種類を、昇順として設定する。ここでは、ソートルールが「ファイル名昇順」であるので、ソートあり比較部15は、比較元ファイル名テーブル23の比較元ファイル名23bをファイル名昇順にソートし、比較先ファイル名テーブル24の比較先ファイル名24bをファイル名昇順にソートする。この結果、比較元ファイル名テーブル23の比較元ファイル名23bは、「0828a.txt」、「0828b.txt」、「0828c.txt」の順に並べ替えられる(図12第2段目左)。比較先ファイル名テーブル24の比較先ファイル名24bは、「0901a.txt」、「0901b.txt」、「0901c.txt」、「0901z.txt」の順に並べ替えられる(図12第2段目右)。
一方、降順フラグが設定されていると判定した場合には(ステップS57;Yes)、ソートあり比較部15は、比較元ファイル名テーブル23および比較先ファイル名テーブル24それぞれをファイル名降順にソートする(ステップS59)。そして、ソートあり比較部15は、ソート種類を、降順として設定する。
ソートあり比較部15は、比較元ファイル名テーブル23のレコード数Oと比較先ファイル名テーブル24のレコード数Tとを比較し、小さいほうをMとする(ステップS60)。ここでは、比較元ファイル名テーブル23のレコード数O(3)の方が比較先ファイル名テーブル24のレコード数T(4)より小さいので、Mには、O(3)が設定される。そして、ソートあり比較部15は、比較元ファイル名テーブル23、比較先ファイル名テーブル24の行番号「1」を変数nに設定する(ステップS61)。
ソートあり比較部15は、比較元ファイル名テーブル23のn番目のレコードのファイル名のファイルを比較ペア1とする(ステップS62)。ソートあり比較部15は、比較先ファイル名テーブル24のn番目のレコードのファイル名のファイルを比較ペア2とする(ステップS63)。
ソートあり比較部15は、比較ペア1と比較ペア2のファイルの内容を比較する(ステップS64)。ここでは、ソートあり比較部15は、nが1の場合には、「0828a.txt」の内容と「0901a.txt」の内容とを比較する(図12第3段目)。nが2の場合には、「0828b.txt」の内容と「0901b.txt」の内容とを比較する(図12第3段目)。nが3の場合には、「0828c.txt」の内容と「0901c.txt」の内容とを比較する(図12第3段)。なお、nが4の場合には、比較先「0901z.txt」に対応する比較元の比較対象がない(図12第3段目)。
ソートあり比較部15は、比較の結果、一致したか否かを判定する(ステップS65)。一致したと判定した場合には(ステップS65;Yes)、ソートあり比較部15は、比較元ファイル名テーブル23のn番目のレコードの比較結果23cの欄に、「一致」にソート種類を加えた比較結果を設定する(ステップS66)。ソートあり比較部15は、比較先ファイル名テーブル24のn番目のレコードの比較結果24cの欄に、「一致」にソート種類を加えた比較結果を設定する(ステップS67)。ここでは、一例として、ソートあり比較部15は、nが1の場合には、「0828a.txt」と「0901a.txt」が一致するので、比較結果23cの欄に「昇順比較、一致」を設定する。比較結果24cの欄に「昇順比較、一致」を設定する(図12第3段目)。
一方、一致しないと判定した場合には(ステップS65;No)、ソートあり比較部15は、比較元ファイル名テーブル23のn番目のレコードの比較結果23cの欄に、「不一致」にソート種類を加えた比較結果を設定する(ステップS68)。ソートあり比較部15は、比較先ファイル名テーブル24のn番目のレコードの比較結果24cの欄に、「不一致」にソート種類を加えた比較結果を設定する(ステップS69)。ここでは、一例として、ソートあり比較部15は、nが3の場合には、「0828c.txt」と「0901c.txt」が一致しないので、比較結果23cの欄に「昇順比較、不一致」を設定する。比較結果24cの欄に「昇順比較、不一致」を設定する(図12第3段目)。
ソートあり比較部15は、次の行番号を指すべく、変数nを1加算する(ステップS70)。ソートあり比較部15は、変数nがMより大きいか否かを判定する(ステップS71)。変数nがMより大きくないと判定した場合には(ステップS71;No)、ソートあり比較部15は、次の行番号の比較をすべく、ステップS62に移行する。
一方、変数nがMより大きいと判定した場合には(ステップS71;Yes)、ソートあり比較部15は、ソートあり比較処理を終了する。
[結果出力の一例]
図13Aおよび図13Bは、結果出力の一例を示す図である。
図13Aでは、図6で示した比較元ディレクトリとして「Old」、比較先ディレクトリとして「New」を引数とし、ソートルールを未指定とした比較コマンドを実行した場合の結果出力の一例である。ソートなし比較部14によって、図11第5段目に示すような比較元ファイル名テーブル23および比較先ファイル名テーブル24が生成されたものとする。
このような状況の下、結果出力部16は、比較元ファイル名テーブル23を用いて、比較元ディレクトリ「Old」配下のファイルの比較結果のサマリを出力する。結果出力部16は、比較先ファイル名テーブル24を用いて、比較先ディレクトリ「New」配下のファイルの比較結果のサマリを出力する。
ここでは、結果出力ファイル25には、1行目に、ディレクトリ名として「¥Old」、比較ファイル数として「3」、不一致ファイル数として「2」、比較ファイル選択ルールとして「ファイル名一致」、比較結果として「NG」が記憶されている。ここで、不一致ファイル数が「2」であるのは、比較元ファイル名テーブル23の比較元ファイル名23b「B.txt」および「X.txt」の比較結果が「一致」でないからである(図11第5段目)。また、比較ファイル選択ルールが「ファイル名一致」であるのは、ソートルールが未指定であるからである。比較結果が「NG」であるのは、不一致ファイル数が1以上であるからである。
また、結果出力ファイル25には、2行目に、ディレクトリ名として「¥New」、比較ファイル数として「3」、不一致ファイル数として「2」、比較ファイル選択ルールとして「ファイル名一致」、比較結果として「NG」が記憶されている。ここで、不一致ファイル数が「2」であるのは、比較先ファイル名テーブル24の比較先ファイル名24b「B.txt」および「Y.txt」の比較結果が「一致」でないからである(図11第5段目)。また、比較ファイル選択ルールが「ファイル名一致」であるのは、ソートルールが未指定であるからである。比較結果が「NG」であるのは、不一致ファイル数が1以上であるからである。
図13Bでは、図7で示した比較元ディレクトリとして「20140828」、比較先ディレクトリとして「20140901」、ソートルールとして「−s」を引数とした比較コマンドを実行した場合の結果出力の一例である。ソートあり比較部15によって、図12第3段目に示すような比較元ファイル名テーブル23および比較先ファイル名テーブル24が生成されたものとする。
このような状況の下、結果出力部16は、比較元ファイル名テーブル23を用いて、比較元ディレクトリ「20140828」配下のファイルの比較結果のサマリを出力する。結果出力部16は、比較先ファイル名テーブル24を用いて、比較先ディレクトリ「20140901」配下のファイルの比較結果のサマリを出力する。
ここでは、結果出力ファイル25には、1行目に、ディレクトリ名として「¥20140828」、比較ファイル数として「3」、不一致ファイル数として「1」、比較ファイル選択ルールとして「ファイル名昇順」、比較結果として「NG」が記憶されている。ここで、不一致ファイル数が「1」であるのは、比較元ファイル名テーブル23の比較元ファイル名23b「0828c.txt」の比較結果が「一致」でないからである(図12第3段目)。また、比較ファイル選択ルールが「ファイル名昇順」であるのは、ソートルールが「ファイル名昇順」を示す「−s」であるからである。比較結果が「NG」であるのは、不一致ファイル数が1以上であるからである。
また、結果出力ファイル25には、2行目に、ディレクトリ名として「¥20140901」、比較ファイル数として「4」、不一致ファイル数として「2」、比較ファイル選択ルールとして「ファイル名昇順」、比較結果として「NG」が記憶されている。ここで、不一致ファイル数が「2」であるのは、比較先ファイル名テーブル24の比較先ファイル名24b「0901c.txt」と「0901z.txt」の比較結果が「一致」でないからである(図12第3段目)。また、比較ファイル選択ルールが「ファイル名昇順」であるのは、ソートルールが「ファイル名昇順」を示す「−s」であるからである。比較結果が「NG」であるのは、不一致ファイル数が1以上であるからである。
なお、ソートルールは、ファイル名の順に従ったルールであり、例えば、ファイル名の昇順や降順であると説明した。しかしながら、ソートルールは、これに限定されず、例えば、ファイル名の所定位置から所定文字数分の昇順や降順であっても良い。すなわち、ソートあり比較部15は、比較元ディレクトリの配下に含まれる複数のファイルを、ファイル名の所定位置から所定文字数分の順に従ったソートルールでソートし、比較先ディレクトリの配下に含まれる複数のファイルを該ソートルールでソートする。そして、ソートあり比較部15は、ソートした結果の比較元ディレクトリに含まれる複数のファイルおよび比較先ディレクトリに含まれる複数のファイルに対して、先頭のファイルから順に突き合わせて、比較処理を実行すれば良い。
また、ソートルールは、ファイルの日時に関するメタ情報の昇順や降順であっても良い。ファイルの日時に関するメタ情報には、例えば、ファイルの作成日時、アクセス日時、更新日時などのタイムスタンプが含まれる。すなわち、ソートあり比較部15は、比較元ディレクトリの配下に含まれる複数のファイルを、ファイルの作成日時の順に従ったソートルールでソートし、比較先ディレクトリの配下に含まれる複数のファイルを該ソートルールでソートする。そして、ソートあり比較部15は、ソートした結果の比較元ディレクトリに含まれる複数のファイルおよび比較先ディレクトリに含まれる複数のファイルに対して、先頭のファイルから順に突き合わせて、比較処理を実行すれば良い。
[実施例の効果]
このようにして、上記実施例では、情報処理装置1が、比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順に従ったソートルールの指定を受け付ける。情報処理装置1は、第一のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートする。情報処理装置1は、第二のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートする。情報処理装置1は、第一のディレクトリの配下をソートしたN番目に対応するファイルの内容と、第二のディレクトリの配下をソートしたN番目に対応するファイルの内容とを比較する。そして、情報処理装置1は、比較結果を出力する。これにより、情報処理装置1は、新旧システムにおいて、ファイル名が一致していない場合であっても、比較対象を自動的に設定できる。
また、上記実施例では、ファイル名の順に従ったソートルールは、ファイル名の昇順または降順のソートである。これにより、情報処理装置1は、第一のディレクトリの配下に含まれる複数のファイルをファイル名の昇順(または降順)でソートし、第二のディレクトリの配下に含まれる複数のファイルをファイル名の昇順(または降順)でソートする。この結果、情報処理装置1は、新旧システムにおいて、同等の機能を実行した際、ファイル名が実行タイミングに依存して命名される場合であっても、ファイル名の昇順(または降順)のソートを行うことで、比較対象を自動的に対応付けることが可能となる。
また、上記実施例では、ファイル名の順に従ったソートルールは、ファイル名の所定位置から所定文字数分の昇順または降順のソートである。これにより、情報処理装置1は、第一のディレクトリの配下に含まれる複数のファイルをファイル名の所定位置から所定文字数分の昇順(または降順)でソートする。情報処理装置1は、第二のディレクトリの配下に含まれる複数のファイルをファイル名の所定位置から所定文字数分の昇順(または降順)でソートする。この結果、情報処理装置1は、新旧システムにおいて、同等の機能を実行した際、ファイル名が実行タイミングに依存して命名される場合であっても、ファイル名の昇順(または降順)のソートを行うことで、比較対象を自動的に対応付けることが可能となる。
[その他]
なお、図示した装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、装置の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、初期化部12と判定部13とを1個の部として統合しても良い。また、比較元ファイル群21、比較先ファイル群22、比較元ファイル名テーブル23、比較先ファイル名テーブル24および結果出力ファイル25を情報処理装置1の外部装置としてネットワーク経由で接続するようにしても良い。
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することによって実現することができる。そこで、以下では、図1に示した情報処理装置1と同様の機能を実現する比較プログラムを実行するコンピュータの一例を説明する。図14は、比較プログラムを実行するコンピュータの一例を示す図である。
図14に示すように、コンピュータ200は、各種演算処理を実行するCPU203と、ユーザからのデータの入力を受け付ける入力装置215と、表示装置209を制御する表示制御部207とを有する。また、コンピュータ200は、記憶媒体からプログラムなどを読取るドライブ装置213と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部217とを有する。また、コンピュータ200は、各種情報を一時記憶するメモリ201と、HDD205を有する。そして、メモリ201、CPU203、HDD205、表示制御部207、ドライブ装置213、入力装置215、通信制御部217は、バス219で接続されている。
ドライブ装置213は、例えばリムーバブルディスク211用の装置である。HDD205は、比較プログラム205aおよび比較処理関連情報205bを記憶する。
CPU203は、比較プログラム205aを読み出して、メモリ201に展開し、プロセスとして実行する。かかるプロセスは、情報処理装置1の各機能部に対応する。比較処理関連情報205bは、比較元ファイル群21、比較先ファイル群22、比較元ファイル名テーブル23、比較先ファイル名テーブル24および結果出力ファイル25に対応する。そして、例えばリムーバブルディスク211が、比較プログラム205aなどの各情報を記憶する。
なお、比較プログラム205aについては、必ずしも最初からHDD205に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカード等の「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ200がこれらから比較プログラム205aを読み出して実行するようにしても良い。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順に従ったソートルールの指定を受け付け、
前記第一のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートした場合にN番目に対応するファイルの内容と、前記第二のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートした場合にN番目に対応するファイルの内容とを比較し、
比較結果を出力する
処理をコンピュータに実行させることを特徴とする比較プログラム。
(付記2)前記ファイル名の順に従ったソートルールは、ファイル名の昇順または降順のソートである
ことを特徴とする付記1に記載の比較プログラム。
(付記3)前記ファイル名の順に従ったソートルールは、ファイル名の所定位置から所定文字数分の昇順または降順のソートである
ことを特徴とする付記1に記載の比較プログラム。
(付記4)コンピュータが、
比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順に従ったソートルールの指定を受け付け、
前記第一のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートした場合にN番目に対応するファイルの内容と、前記第二のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートした場合にN番目に対応するファイルの内容とを比較し、
比較結果を出力する
各処理を実行することを特徴とする比較方法。
(付記5)比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順に従ったソートルールの指定を受け付ける受付部と、
前記第一のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートした場合にN番目に対応するファイルの内容と、前記第二のディレクトリの配下に含まれる複数のファイルをファイル名の順でソートした場合にN番目に対応するファイルの内容とを比較する比較部と、
比較結果を出力する出力部と、
を有することを特徴とする情報処理装置。
1 情報処理装置
10 制御部
11 入力部
12 初期化部
13 判定部
14 ソートなし比較部
15 ソートあり比較部
16 結果出力部
20 記憶部
21 比較元ファイル群
22 比較先ファイル群
23 比較元ファイル名テーブル
24 比較先ファイル名テーブル
25 結果出力ファイル

Claims (4)

  1. 比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順またはファイル名の所定位置から所定文字数分の部分文字列の順のいずれか1つに従ったソートルールの指定を受け付け、
    前記第一のディレクトリの配下に含まれる複数のファイルを前記ソートルールの順でソートした場合にN番目に対応するファイルの内容と、前記第二のディレクトリの配下に含まれる複数のファイルを前記ソートルールの順でソートした場合にN番目に対応するファイルの内容とを比較し、
    比較結果を出力する
    処理をコンピュータに実行させることを特徴とする比較プログラム。
  2. 前記ファイル名の順に従ったソートルールは、ファイル名の昇順または降順のソートであり、前記ファイル名の所定位置から所定文字数分の部分文字列の順に従ったソートルールは、前記部分文字列の昇順または降順のソートである
    ことを特徴とする請求項1に記載の比較プログラム。
  3. コンピュータが、
    比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順またはファイル名の所定位置から所定文字数分の部分文字列の順のいずれか1つに従ったソートルールの指定を受け付け、
    前記第一のディレクトリの配下に含まれる複数のファイルを前記ソートルールの順でソートした場合にN番目に対応するファイルの内容と、前記第二のディレクトリの配下に含まれる複数のファイルを前記ソートルールの順でソートした場合にN番目に対応するファイルの内容とを比較し、
    比較結果を出力する
    各処理を実行することを特徴とする比較方法。
  4. 比較処理を行う対象の第一のディレクトリと第二のディレクトリとの指定に加えて、ファイル名の順またはファイル名の所定位置から所定文字数分の部分文字列の順のいずれか1つに従ったソートルールの指定を受け付ける受付部と、
    前記第一のディレクトリの配下に含まれる複数のファイルを前記ソートルールの順でソートした場合にN番目に対応するファイルの内容と、前記第二のディレクトリの配下に含まれる複数のファイルを前記ソートルールの順でソートした場合にN番目に対応するファイルの内容とを比較する比較部と、
    比較結果を出力する出力部と、
    を有することを特徴とする情報処理装置。
JP2014199386A 2014-09-29 2014-09-29 比較プログラム、比較方法および情報処理装置 Active JP6354501B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014199386A JP6354501B2 (ja) 2014-09-29 2014-09-29 比較プログラム、比較方法および情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014199386A JP6354501B2 (ja) 2014-09-29 2014-09-29 比較プログラム、比較方法および情報処理装置

Publications (2)

Publication Number Publication Date
JP2016071560A JP2016071560A (ja) 2016-05-09
JP6354501B2 true JP6354501B2 (ja) 2018-07-11

Family

ID=55864735

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014199386A Active JP6354501B2 (ja) 2014-09-29 2014-09-29 比較プログラム、比較方法および情報処理装置

Country Status (1)

Country Link
JP (1) JP6354501B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04291417A (ja) * 1991-03-19 1992-10-15 Nec Corp ファイル比較装置
JP2003296162A (ja) * 2002-04-01 2003-10-17 Fuji Photo Film Co Ltd ファイル管理方法
JP2008197718A (ja) * 2007-02-08 2008-08-28 Kenwood Corp コンテンツ識別情報表示装置及びコンテンツ識別情報表示方法
JP2008243053A (ja) * 2007-03-28 2008-10-09 Toshiba Microelectronics Corp データベース比較装置
JP2009282604A (ja) * 2008-05-20 2009-12-03 Nec Corp 重複データ排除システム、重複データ排除方法及び重複データ排除プログラム
US8103621B2 (en) * 2008-10-03 2012-01-24 International Business Machines Corporation HSM two-way orphan reconciliation for extremely large file systems

Also Published As

Publication number Publication date
JP2016071560A (ja) 2016-05-09

Similar Documents

Publication Publication Date Title
US11372980B2 (en) Blockchains for software component vulnerability databases
US8195608B2 (en) File synchronization between multiple nodes
CN113726751B (zh) 一种块链式账本中的权重管理方法、装置及设备
JP6528841B2 (ja) 抽出プログラム、抽出装置および抽出方法
US11210404B2 (en) Blockchain-based state verifications of software component vulnerability database for software products
JP6344185B2 (ja) 評価結果の出力プログラム、評価結果の出力方法および情報処理装置
JP6354501B2 (ja) 比較プログラム、比較方法および情報処理装置
JP7066569B2 (ja) 情報記憶装置、情報記憶方法および情報記憶プログラム
US20220035791A1 (en) Verification method, information processing apparatus, and non-transitory computer-readable storage medium for storing verification program
JP6604086B2 (ja) 項目値対応づけ処理方法、項目値対応づけ処理プログラムおよび情報処理装置
JPWO2018096686A1 (ja) 検証プログラム、検証装置、検証方法、インデックス生成プログラム、インデックス生成装置およびインデックス生成方法
JP6737039B2 (ja) データベースシステム、データ処理プログラム、及びデータ処理方法
US8775873B2 (en) Data processing apparatus that performs test validation and computer-readable storage medium
JP2008123125A (ja) 計算結果比較装置および計算結果比較方法
JP2008107929A (ja) 株式投資銘柄情報提供システム
CN104298698B (zh) 数据管理设备及数据管理方法
CN105468614B (zh) 一种编目的方法及装置
JP6801268B2 (ja) テーブル管理装置、テーブル管理方法およびテーブル管理プログラム
JP2019021025A (ja) 評価プログラム、装置、及び方法
JP2017041006A (ja) 項目値対応づけ処理方法、項目値対応づけ処理プログラムおよび情報処理装置
JP7068404B2 (ja) 長期間に関連のあるイシュー単位のクラスタを利用した文書タイムラインを提供する方法およびシステム
KR102406242B1 (ko) 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치
JP6699433B2 (ja) データ管理プログラム、装置、及び方法
WO2022044336A1 (ja) データ生成プログラム、方法及び装置
WO2013162011A1 (ja) 文書成分分析装置およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180306

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180426

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: 20180515

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180528

R150 Certificate of patent or registration of utility model

Ref document number: 6354501

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150