(57)【要約】【課題】ディレクトリやファイルを操作する時に正確にパスを指定する必要があり、ユーザは指定するディレクトリ等のパスを正確に記憶しておく必要がある。【解決手段】ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付け、ツリー構造を示すパスを構成する各ノードの順序を入れ替えた１以上のパスを含む１以上の第二識別情報を構成し、識別情報または１以上の第二識別情報に合致するファイルまたはディレクトリを決定し、決定したファイルまたはディレクトリに対して、受け付けた操作命令を実行することにより、ユーザは指定するディレクトリやファイルのパスを正確に記憶しておく必要がなく、パスの階層関係を間違えて入力しても、所望のファイル操作、またはディレクトリ操作が可能である。【選択図】  図１
2004164246.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
ファイルまたはディレクトリを操作する命令である操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付ける入力受付ステップと、
前記ツリー構造を示すパスを構成する各ノードの順序を入れ替えた１以上のパスを含む１以上の第二識別情報を構成する第二識別情報構成ステップと、
前記識別情報または前記１以上の第二識別情報に合致するファイルまたはディレクトリを決定するファイル等決定ステップと、
前記ファイル等決定ステップで決定したファイルまたはディレクトリに対して、前記入力受付ステップで受け付けた操作命令を実行する操作命令実行ステップを実行させるためのプログラム。
【請求項２】
コンピュータに、
ディレクトリを生成する命令とツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するディレクトリ生成命令の入力を受け付ける第一入力受付ステップと、
前記ツリー構造を示すパスを構成する各ノードを一定の規則に基づいて並び替えて、第二識別情報を構成する第二識別情報構成ステップと、
前記第二識別情報を有するディレクトリを生成するディレクトリ生成ステップ
を実行させるためのプログラム。
【請求項３】
コンピュータに、
ファイルまたはディレクトリを操作する命令である操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付ける入力受付ステップと、
前記ツリー構造を示すパスを構成する各ノードを一定の規則に基づいて並び替えて、第二識別情報を構成する第二識別情報構成ステップと、
前記第二識別情報構成ステップで構成した第二識別情報を示すパスを含むファイルまたはディレクトリに対して、前記入力受付ステップで受け付けた操作命令を実行する操作命令実行ステップを実行させるためのプログラム。
【請求項４】
操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付け、
前記ツリー構造を示すパスを構成する各ノードの順序を入れ替えた１以上の第二識別情報または前記識別情報に合致するファイルまたはディレクトリに対して、前記操作命令を実行するファイル操作方法。
【請求項５】
ディレクトリおよびファイルのツリー構造を管理しているファイル管理部と、
ファイルの実体データを格納しているファイル記憶部と、
ファイルまたはディレクトリを操作する命令である操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付ける入力受付部と、
前記ツリー構造を示すパスを構成する各ノードの順序を入れ替えた１以上のパスを含む１以上の第二識別情報を構成する第二識別情報構成部と、
前記識別情報または前記１以上の第二識別情報に合致するファイルまたはディレクトリを決定するファイル等決定部と、
前記ファイル等決定部で決定したファイルまたはディレクトリに対して、前記入力受付部で受け付けた操作命令を実行し、前記ファイル管理部で管理されているツリー構造または／および前記ファイル記憶部に格納されているファイルの実体データを変更する操作命令実行部を具備する情報処理装置。
【請求項６】
ディレクトリおよびファイルのツリー構造を管理しているファイル管理部と、
ファイルの実体データを格納しているファイル記憶部と、
ファイルまたはディレクトリを操作する命令である操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付ける入力受付部と、
前記入力受付部が受け付けたファイル操作命令が有する識別情報に基づいて、ツリー構造を示すパスを構成する各ノードを一定の規則に基づいて並び替えて、第二識別情報を構成する第二識別情報構成部と、
前記第二識別情報に合致するファイルまたはディレクトリに対して、前記入力受付部で受け付けた操作命令を実行し、前記ファイル管理部で管理されているツリー構造または／および前記ファイル記憶部に格納されているファイルの実体データを変更する操作命令実行部を具備する情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ファイル管理システムを搭載した情報処理装置等に関する。
【０００２】
【従来の技術】
従来のファイル管理システムは、ツリー構造（木構造）のファイル管理システムは、図１１のような、ルートディレクトリ（ツリー構造の最上位のノード、「／」と表記する。）から始まる階層構造のファイル管理システムである。ディレクトリＤは破線で、ファイルＦは実線で囲って区別している。また、ルートディレクトリからｘ階層下のｙ番目のディレクトリをＤｘｙ、ファイルはＦｘｙと表わしている。また、矢印は親子関係を表わしている。例えば、”Ｘ→Ｙ”は、Ｙから見てＸが親ディレクトリ、ＸからみてＹは子ディレクトリ又は子ファイルであることを意味する。
【０００３】
ツリー構造は、ある階層における、一つのディレクトリ又は一つのファイルからみて、その１階層上には必ず一つのディレクトリ（親ディレクトリ）が存在する。ただし、ルートディレクトリは最上層の階層であるため、ルートディレクトリの親ディレクトリは存在しない。
【０００４】
図１２（ａ）は、簡単なツリー構造のファイル管理システムを例示したものである。ルートディレクトリ「／」の１階層下にディレクトリ「ｄｏｃ」とディレクトリ「ｂｉｎ」が存在し、ディレクトリ「ｄｏｃ」の下層にはディレクトリ「ｔｅｎｎｉｓ」と「ｇｏｌｆ」が、ディレクトリ「ｂｉｎ」の下層にはディレクトリ「ｔｅｎｎｉｓ」と「ｇｏｌｆ」が存在している。
【０００５】
なお、同じディレクトリ名「ｔｅｎｎｉｓ」や「ｇｏｌｆ」でも親ディレクトリが異なれば、異なるディレクトリとして扱われる。ツリー構造のファイル管理システムでは、あらゆるディレクトリ又はファイルはルートを出発点として表記することにより、一意に決定される。従って、ツリー構造を有するファイル管理システムにおいて、ユーザがディレクトリを指定する場合に、例えば、「／ｄｏｃ／ｔｅｎｎｉｓ／ｒｕｌｅ」と指定した場合と、「／ｔｅｎｎｉｓ／ｄｏｃ／ｒｕｌｅ」と指定した場合で、異なるディレクトリであると認識する。
【０００６】
このように特定のディレクトリ又はファイルを指定するための道筋（ディレクトリの列記）をパスという。例えば、図１２（ａ）のツリー構造でファイル「ｒｕｌｅ」を特定するためのパスは、「／ｄｏｃ／ｔｅｎｎｉｓ／ｒｕｌｅ」となる。なお、パスの表示方法には、絶対パス（フルパス）と相対パスとがあるが、特に断らない限り、本明細書で「パス」とは絶対パスを意味するものとする。
【０００７】
このように、ツリー構造は直感的に理解しやすく、体系的な分類・整理が可能となるため、現在のコンピューターファイル管理システムとして広く普及している（第１の従来技術）。
【０００８】
【発明が解決しようとする課題】
しかし、上記従来技術によれば、ファイル管理システムのユーザは、ディレクトリやファイルを操作する時に、ディレクトリやファイルを特定するために、パスを指定する。従って、ユーザは指定するディレクトリやファイルのパスを正確に記憶しておく必要がある。一方、人間の記憶力は曖昧なもので、上記の例で言えば、ファイル「ｒｕｌｅ」が「／ｄｏｃ／ｔｅｎｎｉｓ／ｒｕｌｅ」であるか、「／ｔｅｎｎｉｓ／ｄｏｃ／ｒｕｌｅ」であるか記憶しておくことは困難である。
【０００９】
【課題を解決するための手段】
そこで、第一の発明は、コンピュータに、ファイルまたはディレクトリを操作する命令である操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付ける入力受付ステップと、ツリー構造を示すパスを構成する各ノードの順序を入れ替えた１以上のパスを含む１以上の第二識別情報を構成する第二識別情報構成ステップと、識別情報または１以上の第二識別情報に合致するファイルまたはディレクトリを決定するファイル等決定ステップと、ファイル等決定ステップで決定したファイルまたはディレクトリに対して、入力受付ステップで受け付けた操作命令を実行する操作命令実行ステップを実行させるためのプログラムであり、かかるプログラムにより、ユーザは指定するディレクトリやファイルのパスを正確に記憶しておく必要がなく、パスの階層関係を間違えて入力しても、所望のファイル操作、またはディレクトリ操作が可能である。
【００１０】
また、第二の発明は、コンピュータに、ディレクトリを生成する命令とツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するディレクトリ生成命令の入力を受け付ける第一入力受付ステップと、ツリー構造を示すパスを構成する各ノードを一定の規則に基づいて並び替えて、第二識別情報を構成する第二識別情報構成ステップと、第二識別情報を有するディレクトリを生成するディレクトリ生成ステップを実行させるためのプログラム、および、コンピュータに、ファイルまたはディレクトリを操作する命令である操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付ける入力受付ステップと、ツリー構造を示すパスを構成する各ノードを一定の規則に基づいて並び替えて、第二識別情報を構成する第二識別情報構成ステップと、第二識別情報構成ステップで構成した第二識別情報を示すパスを含むファイルまたはディレクトリに対して、前記入力受付ステップで受け付けた操作命令を実行する操作命令実行ステップを実行させるためのプログラムであり、かかるプログラムにより、ユーザは指定するディレクトリやファイルのパスを正確に記憶しておく必要がなく、パスの階層関係を間違えて入力しても、所望のファイル操作、またはディレクトリ操作が可能である。
【００１１】
【発明の実施の形態】
以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００１２】
（実施の形態１）
図１は、本実施の形態における情報処理装置のブロック図である。本情報処理装置は、本発明のファイル管理を行うプログラムがインストールされている装置である。本情報処理装置は、入力受付部１０１、ファイル管理部１０２、ファイル記憶部１０３、第二識別情報構成部１０４、ファイル等決定部１０５、操作命令実行部１０６を有する。
【００１３】
入力受付部１０１は、操作命令と識別情報を有するファイル操作命令の入力を受け付ける。操作命令とは、ファイルまたはディレクトリを操作する命令である。識別情報とは、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である。入力受付部１０１が受け付ける入力は、キーボードやマウスやリモコン等からの入力であり、入力手段は問わない。入力受付部１０１は、通常、ＭＰＵやメモリ等から実現され得る。入力受付部１０１が入力を受け付けるための処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはハードディスク等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。なお、ディレクトリは、フォルダ等とも言われる。
【００１４】
ファイル管理部１０２は、ディレクトリおよびファイルを管理している。具体的には、ディレクトリおよびファイルのツリー構造およびディレクトリやファイルを識別する情報であるディレクトリ識別子（ディレクトリ名）、ファイル識別子（ファイル名）を格納している。ファイル管理部１０２におけるディレクトリおよびファイルの管理方法は問わない。ファイル管理部１０２は、例えば、ディレクトリおよびファイルの親子関係をテーブルで管理している。また、ファイル管理部１０２は、例えば、ディレクトリおよびファイルの親子関係をポインタで管理している。なお、ファイル管理部１０２におけるディレクトリおよびファイルの管理方法の具体例については、以下で述べる。ファイル管理部１０２は、不揮発性の記録媒体または揮発性の記録媒体で実現される。
【００１５】
ファイル記憶部１０３は、ファイル管理部１０２で管理しているファイル識別子で識別されるファイルの実体データを記憶している。ファイルのデータタイプは、テキストデータ、音声データ、画像データ、動画データ、バイナリーデータ等問わない。ファイル記憶部１０３は、不揮発性の記録媒体または揮発性の記録媒体で実現される。
【００１６】
第二識別情報構成部１０４は、入力受付部１０１が受け付けたツリー構造を示すパスを構成する各ノードの順序を入れ替えた１以上のパスを含む１以上の第二識別情報を構成する。なお、ノードとは、以下の情報を言う。今、パスが「／ｄｏｃ／ｔｅｎｎｉｓ／ｒｕｌｅ」である場合は、ノードは「ｄｏｃ」および「ｔｅｎｎｉｓ」である。つまり、ノードとは、パスを構成する各ディレクトリを言う。なお、「ｒｕｌｅ」はファイル名であるので、ノードではない。また、パスが「／Ａ／Ｂ／Ｃ」（Ａ、Ｂ、Ｃともにディレクトリ名）である場合は、通常、ノードは、最下位のディレクトリを除いた「Ａ」、「Ｂ」を言う。但し、パスが「／Ａ／Ｂ／Ｃ」（Ａ、Ｂ、Ｃともにディレクトリ名）である場合、ノードを「Ａ」、「Ｂ」、および「Ｃ」としても良い。
【００１７】
入力受付部１０１が「／ｄｏｃ／ｔｅｎｎｉｓ／ｒｕｌｅ」を受け付けた場合、第二識別情報構成部１０４は、第二識別情報「／ｔｅｎｎｉｓ／ｄｏｃ／ｒｕｌｅ」を構成する。また、入力受付部１０１が「／Ａ／Ｂ／Ｃ／Ｄ」（Ａ、Ｂ、Ｃはディレクトリ名、Ｄはファイル名）を受け付けた場合、第二識別情報構成部１０４は、第二識別情報として、「／Ａ／Ｃ／Ｂ／Ｄ」、「／Ｂ／Ａ／Ｃ／Ｄ」、「／Ｂ／Ｃ／Ａ／Ｄ」、「／Ｃ／Ａ／Ｂ／Ｄ」、「／Ｃ／Ｂ／Ａ／Ｄ」を生成する。第二識別情報構成部１０４は、通常、ＭＰＵやメモリ等から実現され得る。第二識別情報構成部１０４が第二識別情報を構成するための処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはハードディスク等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００１８】
ファイル等決定部１０５は、入力受付部１０１が受け付けた識別情報または第二識別情報構成部１０４が構成した１以上の第二識別情報に合致するファイルまたはディレクトリを、ファイル管理部１０２から検索して決定する。入力受付部１０１が受け付けた識別情報または第二識別情報構成部１０４が構成した１以上の第二識別情報に合致するファイルまたはディレクトリは、通常、一つである。ファイル等決定部１０５は、通常、ＭＰＵやメモリ等から実現され得る。ファイル等決定部１０５が識別情報または１以上の第二識別情報に合致するファイルまたはディレクトリを、ファイル管理部１０２から検索して決定するための処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはハードディスク等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００１９】
操作命令実行部１０６は、ファイル等決定部１０５が決定したファイルまたはディレクトリに対して、入力受付部１０１が受け付けた操作命令を実行する。操作命令は、例えば、以下の命令がある。操作命令は、ディレクトリ生成命令（コマンド名の例：ｍｋｄｉｒ）、ディレクトリ削除命令（コマンド名の例：ｄｅｌｄｉｒ）、ディレクトリ移動命令（コマンド名の例：ｍｏｖｅｄｉｒ）、ファイル生成命令（コマンド名の例：ｃｒｅａｔｅｆｉｌｅ）、ファイル削除命令（コマンド名の例：ｄｅｌｅｔｅ）、ファイル移動命令（コマンド名の例：ｍｏｖｅ）等がある。操作命令実行部１０６が操作命令を実行することにより、ファイル管理部１０２における管理情報が変更されたり、ファイル記憶部１０３に記憶されているファイルの実体データが生成、削除等されたりする。操作命令実行部１０６は、通常、ＭＰＵやメモリ等から実現され得る。操作命令実行部１０６が操作命令を実行するための処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはハードディスク等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００２０】
以下、本情報処理装置の動作について図２のフローチャートを用いて説明する。
【００２１】
（ステップＳ２０１）入力受付部１０１は、操作命令と識別情報を有するファイル操作命令の入力を受け付けたか否かを判断する。ファイル操作命令の入力を受け付ければステップＳ２０２に行き、ファイル操作命令の入力を受け付けなければステップＳ２０１に戻る。
【００２２】
（ステップＳ２０２）第二識別情報構成部１０４は、ステップＳ２０１で受け付けた識別情報が有するパスを取得する。
【００２３】
（ステップＳ２０３）第二識別情報構成部１０４は、パスを構成するノードが２以上、存在するか否かを判断する。ノードが２以上存在すればステップＳ２０４に行き、ノードが２未満であればステップＳ２０５に行き、
【００２４】
（ステップＳ２０４）第二識別情報構成部１０４は、パスを構成するノードの順序を入れ替えた１以上のパスを含む１以上の第二識別情報を構成する。ここで、第二識別情報構成部１０４は、通常、パスを構成するノードの順序を入れ替えたすべての組み合わせのパスを第二識別情報として構成する。
【００２５】
（ステップＳ２０５）ファイル等決定部１０５は、入力受付部１０１が受け付けた識別情報で識別されるファイルまたはディレクトリを操作対象のファイルまたはディレクトリに決定する。ステップＳ２１４に飛ぶ。
【００２６】
（ステップＳ２０６）ファイル等決定部１０５は、ステップＳ２０１で入力を受け付けた識別情報の数（１）と、ステップＳ２０４で取得した第二識別情報の数を加えた数を変数ｎに代入する。
【００２７】
（ステップＳ２０７）ファイル等決定部１０５は、カウンタｉに１を代入する。
【００２８】
（ステップＳ２０８）ファイル等決定部１０５は、カウンタｉが変数ｎ以下であるか否かを判断する。カウンタｉが変数ｎ以下であればステップＳ２０９に行き、カウンタｉが変数ｎより大きければステップＳ２１０に飛ぶ。
【００２９】
（ステップＳ２０９）ファイル等決定部１０５は、ｉ番目の識別情報（操作対象となる候補のパス）を取得する。なお、１番目の識別情報は、通常、ステップＳ２０１で受け付けた識別情報である。
【００３０】
（ステップＳ２１０）ステップＳ２０１で受け付けた識別情報に対応するファイルまたはディレクトリが存在しない旨のエラーメッセージを出力する。なお、かかるエラーメッセージは、通常、予め格納されているエラーメッセージのパターン情報（文字列等）に、ステップＳ２０１で受け付けた識別情報が挿入されて構成される。但し、エラーメッセージのデータタイプや内容は、特に問わない。入力された識別情報が不適切である旨をユーザに知らせることができれば、ブザー音等の出力等によっても良い。
【００３１】
（ステップＳ２１１）ファイル等決定部１０５は、ステップＳ２０９で取得したｉ番目の識別情報（操作対象の候補となるパス）が、ファイル管理部１０２に管理されているディレクトリまたはファイルであるか否かを判断する。操作対象の候補となるパスがファイル管理部１０２に存在すればステップＳ２１２に行き、操作対象の候補となるパスがファイル管理部１０２に存在しなければステップＳ２１３に飛ぶ。
【００３２】
（ステップＳ２１２）ファイル等決定部１０５は、ｉ番目の識別情報を操作対象のファイル等に決定する。
【００３３】
（ステップＳ２１３）カウンタｉをインクリメントする。ステップＳ２０８に戻る。
【００３４】
（ステップＳ２１４）操作命令実行部１０６は、ファイル等決定部１０５が決定したファイルまたはディレクトリに対して、ステップＳ２０１で受け付けた操作命令を実行する。
【００３５】
なお、図３のフローチャートにおいて、まず、受け付けた識別情報で特定されるファイルやディレクトリが存在するか否かを判断し、存在しない場合に第二識別情報を構成しても良い。
【００３６】
以下、本実施の形態における情報処理装置の具体的な動作について説明する。今、図３に示すディレクトリやファイルのツリー構造がファイル管理部１０２に管理され、８つのファイルの実体データがファイル記憶部１０３に格納されている、とする。図４は、ファイル管理部１０２に格納されているディレクトリ管理表である。ディレクトリ管理表は、ディレクトリやファイルのツリー構造を格納している。ディレクトリ管理表は、「ＩＤ」「ディレクトリ名」「親ディレクトリＩＤ」「ファイル名」を有する１以上のディレクトリ情報を有する。「ＩＤ」は、ディレクトリ情報を識別する情報である。「ディレクトリ名」はディレクトリの名称である。「親ディレクトリＩＤ」は、「ＩＤ」で識別されるディレクトリ情報で管理されるディレクトリの親のディレクトリのＩＤ（図４の表中の「ＩＤ」）を示す。「ファイル名」は、「ＩＤ」で識別されるディレクトリ情報で管理されるディレクトリ内にあるファイルの名称である。図４のディレクトリ管理表を解釈することにより、図３のツリー構造を有するファイルおよびディレクトリ構造が表示され得る。なお、図４のディレクトリ管理表では、あるディレクトリに格納されているファイルを管理するために、「ファイル名」を用いているが、ファイルへのポインタ情報を保持していても良い。
【００３７】
次に、ユーザは、「ｏｐｅｎ  ／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」というファイル操作命令の入力を行ったとする。「ｏｐｅｎ  ／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」というファイル操作命令において、「ｏｐｅｎ」は操作命令であり、ファイルをオープンする意味の命令である。また、「／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」はツリー構造を示すパスを含むファイルである。かかる場合のノードは「ｔｅｎｎｉｓ」および「ｄｏｃ」である。次に、入力受付部１０１は、「ｏｐｅｎ  ／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」というファイル操作命令を受け付ける。
【００３８】
次に、第二識別情報構成部１０４は、「／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」というパスを取得する。ノードは「ｔｅｎｎｉｓ」および「ｄｏｃ」の２つであるので、第二識別情報構成部１０４は、入力された「／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」というパスに対して、ノードの「ｔｅｎｎｉｓ」と「ｄｏｃ」を入れ替えた「／ｄｏｃ／ｔｅｎｎｉｓ／ｓｃｏｒｅ」という第二識別情報（パス）を構成する。従って、ファイル操作の候補となるパスは「／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」および「／ｄｏｃ／ｔｅｎｎｉｓ／ｓｃｏｒｅ」の２つである。
【００３９】
次に、ファイル等決定部１０５は、１番目のファイル操作の候補となるパスである「／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」が図４のディレクトリ管理表に管理されているファイルであるか否かを判断する。まず、図４のディレクトリ管理表中に、「ｒｏｏｔ」を親ディレクトリとして有するディレクトリ名の中に「ｔｅｎｎｉｓ」が存在するか否かを判断する。つまり、図４のディレクトリ管理表において、「親ディレクトリＩＤ」が「１」のレコードの「ディレクトリ名」として「ｔｅｎｎｉｓ」が存在するか否かを判断する。図４のディレクトリ管理表によれば、「ｒｏｏｔ」を親ディレクトリとして有するディレクトリ名は「ｄｏｃ」と「ｂｉｎ」だけであるので、ファイル等決定部１０５は、「／ｔｅｎｎｉｓ／ｄｏｃ／ｓｃｏｒｅ」がファイル操作の対象でないと判断する。
【００４０】
次に、ファイル等決定部１０５は、２番目のファイル操作の候補となるパスである「／ｄｏｃ／ｔｅｎｎｉｓ／ｓｃｏｒｅ」を取得する。次に、ファイル等決定部１０５は、図４のディレクトリ管理表中に、「ｒｏｏｔ」を親ディレクトリとして有するディレクトリ名の中に「ｄｏｃ」が存在するか否かを判断する。図４のディレクトリ管理表によれば、「ｒｏｏｔ」を親ディレクトリとして有するディレクトリ名「ｄｏｃ」は存在するので、ファイル等決定部１０５は、次の判断ステップに行く。つまり、ファイル等決定部１０５は、「ｄｏｃ」（「ＩＤ＝２」）を親ディレクトリとして有するディレクトリ名の中に「ｔｅｎｎｉｓ」が存在するか否かを判断する。図４のディレクトリ管理表によれば、「ｄｏｃ」を親ディレクトリとして有するディレクトリ名「ｔｅｎｎｉｓ」（ＩＤ＝４のディレクトリ情報）は存在する。従って、ファイル等決定部１０５は、さらに次の判断ステップに行く。つまり、ファイル等決定部１０５は、ＩＤ＝４のディレクトリ情報中の「ファイル名」に「ｓｃｏｒｅ」が存在するか否かを判断する。ＩＤ＝４のディレクトリ情報中の「ファイル名」に「ｓｃｏｒｅ」が存在するので、ファイル等決定部１０５は、「／ｄｏｃ／ｔｅｎｎｉｓ／ｓｃｏｒｅ」をファイル操作の対象として決定する。
【００４１】
次に、操作命令実行部１０６は、ファイル等決定部１０５が決定したファイル「／ｄｏｃ／ｔｅｎｎｉｓ／ｓｃｏｒｅ」に対して、受け付けた操作命令「ｏｐｅｎ」を実行する。その結果、ファイル「／ｄｏｃ／ｔｅｎｎｉｓ／ｓｃｏｒｅ」がオープンされる。
【００４２】
以上、本実施の形態において、操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付け、ツリー構造を示すパスを構成する各ノードの順序を入れ替えた１以上の第二識別情報に合致するファイルまたはディレクトリに対して、操作命令を実行するファイル操作方法について説明した。かかるファイル操作方法によれば、ユーザは指定するディレクトリやファイルのパスを正確に記憶しておく必要がなく、パスの階層関係を間違えて入力しても、所望のファイル操作、またはディレクトリ操作が可能である。
【００４３】
なお、本実施の形態において、ファイルの操作を中心に述べたが、ディレクトリ操作に関しても同様である。具体的には、本情報処理装置は、以下の動作を行う。例えば、ユーザが「ｄｅｌｅｔｅ  ／ｕｓｒ１／ｂｉｎ／ｏｂｊ」というファイル操作命令（ファイル操作命令は、ディレクトリを操作する命令も含む。）を入力した、とする。ファイル操作命令を構成する「ｄｅｌｅｔｅ」は、ファイルまたはディレクトリを削除する操作命令である。また、「／ｕｓｒ１／ｂｉｎ／ｏｂｊ」は、ツリー構造を示すパスを含むディレクトリである。つまり、「／ｕｓｒ１／ｂｉｎ／ｏｂｊ」を構成する「ｕｓｒ１」、「ｂｉｎ」および「ｏｂｊ」はすべてディレクトリである。かかる場合、ユーザはディレクトリ「ｏｂｊ」を削除したいと考えている。そして、本情報処理装置は、入力された識別情報「／ｕｓｒ１／ｂｉｎ／ｏｂｊ」が有するノード「ｕｓｒ１」と「ｂｉｎ」の順序を入れ替えた「／ｂｉｎ／ｕｓｒ１／ｏｂｊ」を第二識別情報として構成する。そして、情報処理装置は、まず、識別情報「／ｕｓｒ１／ｂｉｎ／ｏｂｊ」のディレクトリの存在を判断し、存在すれば当該ディレクトリおよび当該ディレクトリ以下の階層のディレクトリとファイルをすべて削除する。また、「／ｕｓｒ１／ｂｉｎ／ｏｂｊ」のディレクトリが存在しなければ、情報処理装置は、第二識別情報「／ｂｉｎ／ｕｓｒ１／ｏｂｊ」のディレクトリの存在を判断し、存在すれば当該ディレクトリおよび当該ディレクトリ以下の階層のディレクトリとファイルをすべて削除する。
【００４４】
また、本実施の形態によれば、情報処理装置は、コンピュータに限らず、デジタルテレビや、セットトップボックスや、ハードディスクを搭載したビデオなどでも良い。つまり、本情報処理装置は、上述のファイル操作方法をとり得る装置であれば何でも良い。かかることは、他の実施の形態においても同様である。
【００４５】
さらに、本実施の形態において説明した動作は、コンピュータ読み取り可能なプログラムで実現しても良い。当該プログラムは、ＣＤ−ＲＯＭなどの記録媒体に記録されて流布しても良いし、ネットワーク配信により流布しても良いし、放送で流布しても良い。なお、本実施の形態において説明した動作を実現するプログラムは、コンピュータに、ファイルまたはディレクトリを操作する命令である操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付ける入力受付ステップと、ツリー構造を示すパスを構成する各ノードの順序を入れ替えた１以上のパスを含む１以上の第二識別情報を構成する第二識別情報構成ステップと、識別情報または１以上の第二識別情報に合致するファイルまたはディレクトリを決定するファイル等決定ステップと、ファイル等決定ステップで決定したファイルまたはディレクトリに対して、入力受付ステップで受け付けた操作命令を実行する操作命令実行ステップを実行させるためのプログラムである。なお、ここでツリー構造を示すパスを構成する各ノードの順序を入れ替えることは、パスを構成する１以上のノードを入れ替えることを意味し、必ずしも、パスを構成するすべてのディレクトリ名やファイル名を入れ替えることではない。
【００４６】
（実施の形態２）
図５は、本実施の形態における情報処理装置のブロック図である。本情報処理装置は、本発明のファイル管理を行うプログラムがインストールされている装置である。本情報処理装置は、入力受付部１０１、ファイル管理部１０２、ファイル記憶部１０３、第二識別情報構成部５０１、操作命令実行部５０２を有する。操作命令実行部５０２は、ディレクトリ生成手段５０２１、ディレクトリ削除手段５０２２、ディレクトリ移動手段５０２３、ファイル生成手段５０２４、ファイル削除手段５０２５、ファイル移動手段５０２６、ファイルオープン手段５０２７等のディレクトリやファイルを操作する手段を具備する。
【００４７】
第二識別情報構成部５０１は、入力受付部１０１が受け付けたファイル操作命令が有する識別情報に基づいて、ツリー構造を示すパスを構成する各ノードを一定の規則に基づいて並び替えて、第二識別情報を構成する。第二識別情報の構成方法の具体例については以下で説明する。第二識別情報構成部５０１は、通常、ＭＰＵやメモリ等から実現され得る。第二識別情報構成部１０４が第二識別情報を構成するための処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはハードディスク等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００４８】
ディレクトリ生成手段５０２１は、ディレクトリを生成する。ディレクトリ削除手段５０２２は、ディレクトリを削除する。ディレクトリの削除は、通常、当該ディレクトリの下位の階層に存在するディレクトリやファイルもすべて削除する。ディレクトリ移動手段５０２３は、ディレクトリを移動する。ファイル生成手段５０２４は、ファイルを生成する。ファイル削除手段５０２５は、ファイルを削除する。ファイル移動手段５０２６は、ファイルを他のディレクトリ傘下に移動する。ファイルオープン手段５０２７は、ファイルをオープンする。上記のファイルやディレクトリの操作手段は、公知技術で実現可能であるので、ここでの詳細な説明は省略する。
【００４９】
以下、本情報処理装置の動作について図６のフローチャートを用いて説明する。
【００５０】
（ステップＳ６０１）入力受付部１０１は、操作命令と識別情報を有するファイル操作命令の入力を受け付けたか否かを判断する。ファイル操作命令の入力を受け付ければステップＳ６０２に行き、ファイル操作命令の入力を受け付けなければステップＳ６０１に戻る。
【００５１】
（ステップＳ６０２）第二識別情報構成部５０１は、ステップＳ６０１で受け付けたファイル操作命令が有する識別情報を取得する。
【００５２】
（ステップＳ６０３）第二識別情報構成部５０１は、ステップＳ６０２で取得した識別情報に基づいて、ツリー構造を示すパスを構成する各ノードを一定の規則に基づいて並び替えて、第二識別情報を構成する。ここで、一定の規則に基づいて並び替えるとは、例えば、昇順または降順にソートすることである。また、一定の規則に基づいて並び替えるとは、例えば、文字数の少ないノードをツリーの上位に置くことである。かかる場合、同じ文字数の場合は、例えば、アルファベットの昇順に順位を決定する。なお、一定の規則の内容は問わない。また、ツリー構造を示すパスを構成する各ノードとは、パスを構成するすべてのディレクトリ名、およびファイル名であるとは限らない。
【００５３】
（ステップＳ６０４）ディレクトリ生成手段５０２１は、ステップＳ６０１で受け付けたファイル操作命令が有する操作命令がディレクトリ生成を指示する命令か否かを判断する。ディレクトリ生成を指示する命令であればステップＳ６０５に行き、ディレクトリ生成を指示する命令でなければステップＳ６０８に飛ぶ。
【００５４】
（ステップＳ６０５）ディレクトリ生成手段５０２１は、ステップＳ６０３で構成した第二識別情報で識別されるディレクトリが存在するか否かを判断する。第二識別情報で識別されるディレクトリが存在しなければステップＳ６０６に行き、第二識別情報で識別されるディレクトリが存在すればステップＳ６０７に飛ぶ。
【００５５】
（ステップＳ６０６）ディレクトリ生成手段５０２１は、第二識別情報で識別されるディレクトリを生成する。
【００５６】
（ステップＳ６０７）ディレクトリ生成手段５０２１は、入力された識別情報に対応するディレクトリが既に存在する旨を示すエラーメッセージを出力する。
【００５７】
（ステップＳ６０８）ディレクトリ削除手段５０２２は、ステップＳ６０１で受け付けたファイル操作命令が有する操作命令がディレクトリ削除を指示する命令か否かを判断する。ディレクトリ削除を指示する命令であればステップＳ６０９に行き、ディレクトリ削除を指示する命令でなければステップＳ６１２に飛ぶ。
【００５８】
（ステップＳ６０９）ディレクトリ削除手段５０２２は、ステップＳ６０３で構成した第二識別情報で識別されるディレクトリが存在するか否かを判断する。第二識別情報で識別されるディレクトリが存在すればステップＳ６１０に行き、第二識別情報で識別されるディレクトリが存在しなければステップＳ６１１に飛ぶ。
【００５９】
（ステップＳ６１０）ディレクトリ削除手段５０２２は、第二識別情報で識別されるディレクトリ、および当該ディレクトリ以下のディレクトリおよびファイルを削除する。
【００６０】
（ステップＳ６１１）ディレクトリ削除手段５０２２は、入力された識別情報に対応するディレクトリが存在しない旨を示すエラーメッセージを出力する。
【００６１】
（ステップＳ６１２）ディレクトリ移動手段５０２３は、ステップＳ６０１で受け付けたファイル操作命令が有する操作命令がディレクトリ移動を指示する命令か否かを判断する。ディレクトリ移動を指示する命令であればステップＳ６０９に行き、ディレクトリ移動を指示する命令でなければステップＳ６１２に飛ぶ。
【００６２】
（ステップＳ６１３）ディレクトリ移動手段５０２３は、ステップＳ６０３で構成した第二識別情報で識別されるディレクトリが存在するか否かを判断する。第二識別情報で識別されるディレクトリが存在すればステップＳ６１４に行き、第二識別情報で識別されるディレクトリが存在しなければステップＳ６１５に飛ぶ。
【００６３】
（ステップＳ６１４）ディレクトリ移動手段５０２３は、第二識別情報で識別されるディレクトリを移動する。なお、ディレクトリの移動は、通常、ディレクトリの親ディレクトリを変更するだけで良い。
【００６４】
（ステップＳ６１５）ディレクトリ移動手段５０２３は、入力された識別情報に対応するディレクトリが存在しない旨を示すエラーメッセージを出力する。
【００６５】
（ステップＳ６１６）ファイル生成手段５０２４は、ステップＳ６０１で受け付けたファイル操作命令が有する操作命令がファイル生成を指示する命令か否かを判断する。ファイル生成を指示する命令であればステップＳ６１７に行き、ファイル生成を指示する命令でなければステップＳ６２０に飛ぶ。
【００６６】
（ステップＳ６１７）ファイル生成手段５０２４は、ステップＳ６０３で構成した第二識別情報で識別されるファイルが存在するか否かを判断する。第二識別情報で識別されるファイルが存在しなければステップＳ６１８に行き、第二識別情報で識別されるファイルが存在すればステップＳ６１９に飛ぶ。
【００６７】
（ステップＳ６１８）ファイル生成手段５０２４は、ステップＳ６０３で構成した第二識別情報で識別されるファイルを生成する。
【００６８】
（ステップＳ６１９）ファイル生成手段５０２４は、入力された識別情報に対応するファイルが既に存在する旨を示すエラーメッセージを出力する。
【００６９】
（ステップＳ６２０）ファイル削除手段５０２５は、ステップＳ６０１で受け付けたファイル操作命令が有する操作命令がファイル削除を指示する命令か否かを判断する。ファイル削除を指示する命令であればステップＳ６２１に行き、ファイル削除を指示する命令でなければステップＳ６２４に飛ぶ。
【００７０】
（ステップＳ６２１）ファイル削除手段５０２５は、ステップＳ６０３で構成した第二識別情報で識別されるファイルが存在するか否かを判断する。第二識別情報で識別されるファイルが存在すればステップＳ６２２に行き、第二識別情報で識別されるファイルが存在しなければステップＳ６２３に飛ぶ。
【００７１】
（ステップＳ６２２）ファイル削除手段５０２５は、ステップＳ６０３で構成した第二識別情報で識別されるファイルを削除する。
【００７２】
（ステップＳ６２３）ファイル削除手段５０２５は、入力された識別情報に対応するファイルが存在しない旨を示すエラーメッセージを出力する。
【００７３】
（ステップＳ６２４）ファイル移動手段５０２６は、ステップＳ６０１で受け付けたファイル操作命令が有する操作命令がファイル移動を指示する命令か否かを判断する。ファイル移動を指示する命令であればステップＳ６２５に行き、ファイル移動を指示する命令でなければステップＳ６２８に飛ぶ。
【００７４】
（ステップＳ６２５）ファイル移動手段５０２６は、ステップＳ６０３で構成した第二識別情報で識別されるファイルが存在するか否かを判断する。第二識別情報で識別されるファイルが存在すればステップＳ６２６に行き、第二識別情報で識別されるファイルが存在しなければステップＳ６２７に飛ぶ。
【００７５】
（ステップＳ６２６）ファイル移動手段５０２６は、ステップＳ６０３で構成した第二識別情報で識別されるファイルを移動する。
【００７６】
（ステップＳ６２７）ファイル移動手段５０２６は、入力された識別情報に対応するファイルが存在しない旨を示すエラーメッセージを出力する。
【００７７】
（ステップＳ６２８）ファイルオープン手段５０２７は、ステップＳ６０１で受け付けたファイル操作命令が有する操作命令がファイルオープンを指示する命令か否かを判断する。ファイルオープンを指示する命令であればステップＳ６２９に行き、ファイルオープンを指示する命令でなければステップＳ６３２に飛ぶ。
【００７８】
（ステップＳ６２９）ファイルオープン手段５０２７は、ステップＳ６０３で構成した第二識別情報で識別されるファイルが存在するか否かを判断する。第二識別情報で識別されるファイルが存在すればステップＳ６３０に行き、第二識別情報で識別されるファイルが存在しなければステップＳ６３１に飛ぶ。
【００７９】
（ステップＳ６３０）ファイルオープン手段５０２７は、ステップＳ６０３で構成した第二識別情報で識別されるファイルをオープンする。
【００８０】
（ステップＳ６３１）ファイルオープン手段５０２７は、入力された識別情報に対応するファイルが存在しない旨を示すエラーメッセージを出力する。
【００８１】
（ステップＳ６３２）入力された操作命令が対応していない命令である旨のメッセージを出力する。
【００８２】
以下、本実施の形態における情報処理装置の具体的な動作について説明する。今、図７に示すディレクトリやファイルのツリー構造がファイル管理部に管理されている、とする。図８は、図７のツリー構造のディレクトリやファイルを管理するディレクトリ管理表である。図８のディレクトリ管理表を解釈すれば、図７のツリー構造が構成され得る。
【００８３】
図８のディレクトリ管理表は、「ＩＤ」「ディレクトリ名」「親ディレクトリＩＤ」「ポインタ」を有するディレクトリ情報を１以上格納している。「ポインタ」は、ファイル記憶部が保持しているファイルへのポインタ情報である。「ポインタ」によりリンク付けられているファイルが、当該ディレクトリに存在するファイルである。「ＩＤ＝１」の「ｒｏｏｔ」ディレクトリの「ポインタ」は、「Ｆ５」「Ｆ６」のファイルのアドレスを示す情報であるので、「ｒｏｏｔ」ディレクトリには「Ｆ５」「Ｆ６」のファイルが存在する。
【００８４】
かかる状態で、ユーザは、「ｍｋｄｉｒ  ／ｘｘｘ／ｂｂｂ／ａａｂ」を入力したとする。情報処理装置は、まず、識別情報「／ｘｘｘ／ｂｂｂ／ａａｂ」を取得する。そして、ノード「ｘｘｘ」、「ｂｂｂ」および「ａａｂ」をアルファベットの昇順に並び替える。つまり、本例では、第二識別情報構成部がツリー構造を示すパスを構成する各ノードを並び替える一定の規則は、昇順にソートすることである。よって、情報処理装置は、第二識別情報「／ａａｂ／ｂｂｂ／ｘｘｘ」を構成する。そして、情報処理装置は、「ｍｋｄｉｒ  ／ａａｂ／ｂｂｂ／ｘｘｘ」を実行する。つまり、図７のディレクトリ構造は、図９のようになる。また、図８のディレクトリ管理表は、図１０のようになる。
【００８５】
次に、ユーザは、「ｏｐｅｎ  ／ｃｃｃ／ｂｂｂ／ａａａ／Ｆ２」を入力したとする。情報処理装置は、まず、識別情報「／ｃｃｃ／ｂｂｂ／ａａａ／Ｆ２」を取得する。そして、ノード「ｃｃｃ」、「ｂｂｂ」および「ａａａ」をアルファベットの昇順に並び替える。そして、情報処理装置は、第二識別情報「／ａａｂ／ｂｂｂ／ｃｃｃ／Ｆ２」を構成する。そして、情報処理装置は、「ｏｐｅｎ／ａａｂ／ｂｂｂ／ｃｃｃ／Ｆ２」を実行する。そして、ファイル「／ａａｂ／ｂｂｂ／ｃｃｃ／Ｆ２」は、オープンされる。
【００８６】
次に、ユーザは、「ｄｅｌｅｔｅ  ／ｂｂｂ／ａａｂ／Ｆ４」を入力したとする。情報処理装置は、まず、識別情報「／ｂｂｂ／ａａｂ／Ｆ４」を取得する。そして、ノード「ｂｂｂ」および「ａａｂ」をアルファベットの昇順に並び替える。そして、情報処理装置は、第二識別情報「／ａａｂ／ｂｂｂ／Ｆ４」を構成する。そして、情報処理装置は、「ｄｅｌｅｔｅ  ／ａａｂ／ｂｂｂ／Ｆ４」を実行する。以上の処理より、図９のツリー構造からファイル「Ｆ４」は削除される。
【００８７】
以上、本実施の形態によれば、ユーザは指定するディレクトリやファイルのパスを正確に記憶しておく必要がなく、パスの階層関係を間違えて入力しても、所望のファイル操作、またはディレクトリ操作が可能である。
【００８８】
なお、本実施の形態において説明した動作は、コンピュータ読み取り可能なプログラムで実現しても良い。当該プログラムは、ＣＤ−ＲＯＭなどの記録媒体に記録されて流布しても良いし、ネットワーク配信により流布しても良いし、放送で流布しても良い。なお、本実施の形態において説明した動作を実現するプログラムは、コンピュータに、ディレクトリを生成する命令とツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するディレクトリ生成命令の入力を受け付ける第一入力受付ステップと、ツリー構造を示すパスを構成する各ノードを一定の規則に基づいてソーティングして、第二識別情報を構成する第二識別情報構成ステップと、第二識別情報を有するディレクトリを生成するディレクトリ生成ステップを実行させるためのプログラムである。また、コンピュータに、ファイルまたはディレクトリを操作する命令である操作命令と、ツリー構造を示すパスを含むファイルまたはツリー構造を示すパスを含むディレクトリを識別する情報である識別情報を有するファイル操作命令の入力を受け付ける入力受付ステップと、ツリー構造を示すパスを構成する各ノードを一定の規則に基づいて並び替えて、第二識別情報を構成する第二識別情報構成ステップと、第二識別情報構成ステップで構成した第二識別情報を示すパスを含むファイルまたはディレクトリに対して、入力受付ステップで受け付けた操作命令を実行する操作命令実行ステップを実行させるためのプログラムである。
【発明の効果】
以上のように、本発明によれば、ユーザは指定するディレクトリやファイルのパスを正確に記憶しておく必要がなく、パスの階層関係を間違えて入力しても、所望のファイル操作、またはディレクトリ操作が可能である。
【図面の簡単な説明】
【図１】実施の形態１における情報処理装置のブロック図
【図２】実施の形態１における情報処理装置の動作について説明するフローチャート
【図３】実施の形態１におけるディレクトリのツリー構造を示す図
【図４】実施の形態１におけるディレクトリ管理表を示す図
【図５】実施の形態２における情報処理装置のブロック図
【図６】実施の形態２における情報処理装置の動作について説明するフローチャート
【図７】実施の形態２におけるディレクトリのツリー構造を示す図
【図８】実施の形態２におけるディレクトリ管理表を示す図
【図９】実施の形態２におけるディレクトリのツリー構造を示す図
【図１０】実施の形態２におけるディレクトリ管理表を示す図
【図１１】従来技術におけるディレクトリのツリー構造を示す図
【図１２】従来技術におけるディレクトリのツリー構造を示す図
【符号の説明】
１０１  入力受付部
１０２  ファイル管理部
１０３  ファイル記憶部
１０４、５０１  第二識別情報構成部
１０５  ファイル等決定部
１０６、５０２  操作命令実行部
５０２１  ディレクトリ生成手段
５０２２  ディレクトリ削除手段
５０２３  ディレクトリ移動手段
５０２４  ファイル生成手段
５０２５  ファイル削除手段
５０２６  ファイル移動手段
５０２７  ファイルオープン手段
【図１】
2004164246.tif 000003
【図２】
2004164246.tif 000004
【図３】
2004164246.tif 000005
【図４】
2004164246.tif 000006
【図５】
2004164246.tif 000007
【図６】
2004164246.tif 000008
【図７】
2004164246.tif 000009
【図８】
2004164246.tif 000010
【図９】
2004164246.tif 000011
【図１０】
2004164246.tif 000012
【図１１】
2004164246.tif 000013
【図１２】
2004164246.tif 000014