• 締切済み

ファイル名ソートにハイフン

LiRAUの回答

  • LiRAU
  • ベストアンサー率67% (126/187)
回答No.2

回答になっていない可能性がありますので参考程度にして下さい。 >この奇妙な(?)仕様、なんとかならないですかねぇ… 私の環境ではデフォルトの状態で下記のようにソートされました(XP Home と Pro) 質問者さんのPCは2000ではなくXPなのですよね。 質問者さんはこの様に並べたいのですよね(違ってたらごめんなさい) a1.txt a2.txt a-1.txt a-2.txt レジストリに NoStrCmpLogical を書き加えていると言う前提で。 下記のような並びになるのはレジストリに NoStrCmpLogical がある為だと思われます。 ですので NoStrCmpLogical を試しに削除してOS再起動で意図したような並びになるように思います(一応検証はしました) 何らかの意図があって今は「文字列順」に並べてあり、それをデフォルト設定の「数値順」にすれば良いかと思います。 a1.txt a-1.txt a2.txt a-2.txt ファイル名の表示順序を変更する(NoStrCmpLogical) http://www.atmarkit.co.jp/fwin2k/win2ktips/342xpsort/xpsort.html

SV576
質問者

補足

ご回答ありがとうございます。 なかなかうまく説明できずに申し訳ありません…。 しかも例が良くありませんでしたね…。あらためて補足させてください。 この例も良いかどうか怪しいですが… 大木さんと大北さんという家族があります。もちろん別の家族(別世帯)です。両方に、太郎と二郎がいます。 大木太郎、大木二郎、大北太郎、大北二郎の4人の名前をファイル名にします。 OOKI-TARO.txt OOKI-JIRO.txt OOKITA-TARO.txt OOKITA-JIRO.txt エクスプローラーでは、ちょうど上記のように、大木ファミリーと大北ファミリーはそれぞれ固まって表示して欲しいのです。 もちろんOOKITAが上でも良いし、太郎が後でも順番はとりあえず構わないので、ハイフンより前の部分が同じものが固まって表示されるのが理想です(というか自然だと思います)。 ところが、私の環境WinXP Proでは、以下のようにソートされます。 OOKI-JIRO.txt OOKITA-JIRO.txt OOKI-TARO.txt OOKITA-TARO.txt 良く見ると、ハイフンを無視して文字コード順になっているように思えます。 DOSのDIRコマンドで /on オプションをつけた結果も同じでした。 また、念のため、ご指摘のようにNoStrCmpLogicalを設定してみましたが、結果は同じでした。 ちなみに、NoStrCmpLogicalを設定すると、確かにおっしゃるとおりa1とa-1の並びはご指摘のようになりますね。ただこれはたまたま数値と認識する部分としない部分が同じだったので、例として良くありませんでした。すみません。 ついでに言えば、おっしゃっているケースでも、本当に文字コード順であれば、 a1.txt a2.txt a-1.txt a-2.txt ではなく、ハイフンが先に来るはずですよね。 今回の例を文字コード順にすると、こうなるはずです。 OOKI-JIRO.txt OOKI-TARO.txt OOKITA-JIRO.txt OOKITA-TARO.txt Linux環境のlsコマンドでは、ちゃんと上記のように並びました。 この説明でうまく伝わったかどうか不安ですが…、どうでしょう。何か御存じないでしょうか。

関連するQ&A

  • Windows7 のエクスプローラで、自動ソートを無効にする方法は無い

    Windows7 のエクスプローラで、自動ソートを無効にする方法は無いのでしょうか。 Windows7 のエクスプローラ右側の表示で、下記のようなファイルがある際に、  aaa.txt  zzz.txt ファイル ccc.txt を追加すると、  aaa.txt  ccc.txt  zzz.txt と、後から追加したファイルを自動ソートして表示されてしまいます。 WindowsXP のように、後から追加したファイルを下記のように後ろに並ぶように設定する方法はないのでしょうか。  aaa.txt  zzz.txt  ccc.txt 自動的にソートされてしまうと、フォルダ内にファイルを作成した際に、どのファイルが新しいファイルかわからなくなってしまうため、WindowsXP のように、後から追加したファイルが並びの後ろに表示したいためです。 また、プログラムなどでファイルが作成されたときにも同じように後ろに並んでくれれば、どのファイルが作成されたものかみ分けがつきやすいために、WindowsXP のようにファイルの並びの後ろに表示できないものかと思っています。 初歩的な質問で申し訳ありませんが、よろしくお願いします。

  • powershellでのソート

    powershellでのソート処理に関して教えてください。 list.csv F1,F2,F3 file01.txt,c:\dirA,100kb file20.txt,c:\dirC,100kb file100.txt,c:\dirG,100kb file200.txt,c:\dirG,100kb CSVで上記の様なデータがあり、F1のデータにおいて、 ファイル名の数字部分でソートしたいのですが、 意図したソートができません。 数字を考慮してのソートってどうやればよいでしょうか。 PS c:\>Get-Content .\list.csv|ConvertFrom-CSV |Sort-Object f1 F1 F2 F3 -- -- -- file01.txt c:\dirA 100kb file100.txt c:\dirG 100kb file20.txt c:\dirC 100kb file200.txt c:\dirG 100kb file01.txt→file02.txt→file100.txt→file200.txtの並びでソートさせたいです。 よろしくお願いします。

  • エクスプローラでの名前によるファイル名ソート方法

    例えば、 baseball1.txt football1.txt Baseball2.txt Football2.txt という4つのファイルを、エクスプローラで名前によるソートをかけた場合には、 baseball1.txt Baseball2.txt football1.txt Football2.txt …と表示されます。私は今までこのようなソートはアスキーコード順に次のようにソートされると思ってました。 Baseball2.txt Football2.txt baseball1.txt football1.txt このようなWindowsでの名前によるソートの基本的な方法を解説した良いweb site があれば教えてください。よろしくお願いします。

  • ファイルの並び順

    ファイルの並び替えについて質問です とあるフォルダのファイルを名前順でソートしたところ A_04a1.txt A_0101.txt A_0102.txt A_0201.txt A_0202.txt A_0301.txt とソートされます。 何故、このような並びになるのでしょう OSはWin7(64bit)です 何故 A_0101.txt A_0102.txt A_0201.txt A_0202.txt A_0301.txt A_04a1.txt のように並ばないのでしょうか 宜しくお願い致します。

  • Wndows 全角数字を含むファイル名ソート

    Windows XP エスプローラ画面での、ソート論理がわからず、非常に悩んでいます。 例えば、「数字は半角全角区別なく、数値の大小でソートされる」 と思っていたのですが(間違い?)、以下のようなファイル名では、その並びとなりません。 例) 5個のファイル名「1、1、2、2、100」でのソート結果  1  1  2 100  2   (↑何故か100が2よりも上にきている) ・ソート時の全角数字の取り扱いはどのようになるのでしょうか? ・また、Windows XPでのソート論理詳細の情報などあれば、 どなたか教えていただけないでしょうか??

  • サイズの大きなテキストファイルのSORT

    3GB超のテキストファイルをSORTコマンドでソートしたいのですが、空(0KB)の出力ファイルが出来て処理が終わってしまいます。 数KB~数MBのテキストでは正常にソートされるのですが、GB単位になると上記の現象が発生します。 環境はWindowsNTServer4.0です。 ソートできるファイルサイズの上限、ディスクの空き容量等、制限があるのでしょうか? また、上記の現象を回避し、正常にソートする方法をご存知な方がいらっしゃいましたら、どうぞご教授ください。 宜しくお願い致します。 ↓ソートコマンドは至ってシンプルです。 sort /+1 < TEST.dat > OUT.txt

  • ファイルのソートについて

    ファイルのソートについての質問です。 今度、知人に写真をいれたDVDを渡そうと思っています。 イベント事にフォルダ分けはしてあるのですが、色々なカメラで撮られた写真があるので名前でソートすると時系列がおかしくなってしまいます。 撮影日時でソートすれば時系列通り見ることができるのですが、DVDに焼くとなるとどうして良いのか分かりません。 DVDを読み込む→フォルダを開く→時系列の早いものから並んでいる と言うのが理想なのですが・・・・。 私はWindows7ですが、相手方のOS等はわかりません。 どのような方法でもいいので(例えば撮影日時の並び方でリネーム)良い方法があれば教えて下さい!!

  • ファイル名だけを取り出す方法

    WindowsXP Office2003 下記のようにフォルダ分けされ保存しているファイルがあります。 数ある階層のフォルダを無視し、そのファイル名だけを取り出してExcelのデータベースにしたいのですができるでしょうか? できれば特殊なソフトなどを使わない方法を知りたいです。  大分類フォルダ1  |___中分類フォルダ1  |    |________ファイル名1  |    |  |    |________ファイル名2  |  |___中分類フォルダ2  |    |________ファイル名3  |    |  |    |________ファイル名4  |  |  大分類フォルダ2  |___中分類フォルダ1  |    |________ファイル名5  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~        ファイル名1  ファイル名2  ファイル名3  ファイル名4  ファイル名5  ~~~

  • sortコマンドについて

    33 333 22 33 333 33 33 333 11 33 222 11 33 111 11 44 111 11 44 222 11 11 111 11 11 222 11 上記のファイルを以下のようにソートしたいのですが どのようにすればよいでしょうか? 第一ソートキー 1~2番目の昇順 第二ソートキー 4~6番目の降順 第三ソートキー 8~9番目の昇順 (ちなみにspaceはたまたまspaceで区切り文字ではありません) 11 222 11 11 111 11 33 333 11 33 333 22 33 333 33 33 222 11 33 111 11 44 222 11 44 111 11 以下の試して見ましたがうまくいきませんでした。 sort -k 1.1,1.2 -r -k 1.4,1.6 -k 1.8,1.9 test.txt 宜しくお願い致します。

  • フォルダを無視したファイルのソート

    更新日付が1年以上前の古いファイルを全て削除しようと思います。 エクスプローラーから更新日付でソートすればいいのですが、フォルダの数が半端なく多くまた深いツリーになっているため、フォルダを1つずつあけてソートし削除するのは大変な労力です。 フォルダの垣根を無視し、指定フォルダ以下の全ファイルをソートし、さらにその画面からまとめて削除できるような方法はないでしょうか?