• 締切済み

フォルダ内の韓国語のファイル名の一覧を作成するには

エクスプローラーでフォルダの中を見ると 韓国語の文字を含むファイル名の 韓国語の文字が正しく表示されているのに コマンドプロンプトから dirを実行すると 韓国語の文字が■で表示されてしまいます。 コマンドプロンプトから dirを実行して 韓国語の文字が正しく表示させるようにすることは できるのでしょうか。 したいことは dir /b > list.txt で、フォルダの中にある 韓国語の文字を含むファイル名の一覧を 作成したいのですが、生成された list.txtは、韓国語の文字が?の表示になって うまくいきません。 フォルダの中にある 韓国語の文字を含むファイル名の一覧を 作成するにはどうすればよいでしょうか。 (Windows7 日本語)

みんなの回答

回答No.5

No.2です。 もう既に解決したのだと思っていました。 unicode(UTF-8)のコードページでないとうまくいかないですね。ここまでは確認できませんでした。 ”CP_UTF8” 65001 Application Compatibility Toolkitで使えるコードページとしてMSより明示されていました。 https://msdn.microsoft.com/ja-jp/library/aa288104(v=vs.71).aspx >何が起きているのかよく分からないのですが あらぬとことで引っかかりましたね。 あなたが実行したカレントフォルダの位置がまずかったのです。 恐らく”dir /b >???.lst”を実行したのでしょう。 読んで字の如く、 >The system cannot write to the specified device. リダイレクト先がシステムフォルダであるそのフォルダには、権限がないので書き込めないのですよ。 DOS窓を開いて cd \document\lesson\Youtube などを実行し、書き込める権限があるフォルダに移動してから作業して下さい。 >このようなソフトを探してみましたが見つかりませんので それは探し方の問題だと思いますが…。 すぐ見つかりましたよ?他にもまだあると思います。 http://www.vector.co.jp/soft/dl/winnt/util/se510104.html ハングル文字も取得できます。

ID_20150222
質問者

お礼

>リダイレクト先がシステムフォルダであるそのフォルダには、 >権限がないので書き込めないのですよ。 >DOS窓を開いて >cd \document\lesson\Youtube >などを実行し、書き込める権限があるフォルダに移動してから >作業して下さい。 DOS窓を開いて cd \document\lesson\Youtubeで移動して chcp 65001を実行すると Active code page: 65001 The system cannot write to the specified device. と表示されます。この後、dirを実行すると Volume in drive C has no label. Volume Serial Number is 0E4B-AC7B The system cannot write to the specified device. というメッセージが表示されます。 chcp 65001を実行した後のコマンドプロンプトの 挙動が少しおかしいです。 (ラスターフォントとMSゴシックいずれにおいても) >unicode(UTF-8)のコードページでないとうまくいかないですね。 ということですが、 ”CP_UTF8” 65001ではうまくいかないので 教えてほしいのですが MSゴシックにすると 日本語SHIFT-JISの状態(chcp 932を実行した状態)でも dirで韓国語が表示されているので リダイレクトで生成したファイルも MSゴシックのフォントで生成されているはずなので typeコマンドで韓国語が表示されると思われるのですが なぜできないのでしょうか。 よろしくお願いします。

  • mdmp2
  • ベストアンサー率55% (438/787)
回答No.4

NO.3 です。 「4つのステップを実行しないいけない」ということですね。 1 文字コードを変更するコマンド cmd /K "chcp 20949" 2 フォントを「ラスターフォント」から「Consolas」などに変更 3 ファイルのリストを作成するコマンド dir C:\document\lesson\Youtube\ 4 フォントを「ラスターフォント」にもどす。 コマンドプロンプトのフォントに関して知識がありませんので、お役に立てそうもありませんが、 ■設定されたフォントによっては dir C:\document\lesson\Youtube\ を実行できないことがあるが、dir・・・を実行できる「ラスターフォント」では、韓国文字が文字化けする。 ということに集約できるとすると、韓国語フォントをコマンド・プロンプトに追加してみてはいかがでしょうか。コマンド・プロンプトにフォントを追加する方法はネットで紹介されています。 例えば、http://pooh.gr.jp/?p=229 ■上記のStep 3 で、コマンドプロンプト上で表示するのではなく、テキストファイルにリダイレクトした場合は、どうなるでしょうか?文字化けしていると思いますが、メモ帳の書式でフォントを変更することにより読むことができないでしょうか? (以上二つのアドバイスは経験に基づくものではありません。)

ID_20150222
質問者

お礼

ありがうございます。 >韓国語フォントをコマンド・プロンプトに >追加してみてはいかがでしょうか。 フォントを追加する前に、 日本語SHIFT-JISの状態(chcp 932を実行した状態)で プロパティのフォントタブでラスタフォントになっていたので (最初の質問ではこの状態で確認しました) MSゴシックに変えてdirを実行したところ なぜかコマンドプロンプト上では 韓国語が表示されていました。 >■上記のStep 3 で、コマンドプロンプト上で表示するのではなく、 >テキストファイルにリダイレクトした場合は、どうなるでしょうか? >文字化けしていると思いますが、メモ帳の書式でフォントを変更する >ことにより読むことができないでしょうか しかし、dir > list.txt で書き出してメモ帳で確認すると 韓国語の文字の部分が?になっています。 メモ帳でフォントを同じMSゴシックにしても?のままです。 コマンドプロンプト上のフォントとメモ帳のフォントは 同じMSゴシックなのに、なぜコマンドプロンプト上では 韓国語が表示されているのに、メモ帳では韓国語が 表示されないのかな?

  • mdmp2
  • ベストアンサー率55% (438/787)
回答No.3

No.1 です。 ダメだったようで、すみません。 韓国語文字コードページは、20949 のようです。 https://www.ipentec.com/document/document.aspx?page=windows-codepage-list cmd /K "chcp 20949" を試してください。 ダメだったら、他にも 949 など韓国語文字コードページがありますので、リストを見て、”韓国語”とあるものをすべて試してください。

ID_20150222
質問者

お礼

cmd /K "chcp 20949"でも同じメッセージがでます。 The system cannot write to the specified device. コマンドプロンプトのプロパティのフォントタブで ラスターフォントをConsolasなどの別のフォントにして dir C:\document\lesson\Youtube\ を実行すると上記のメッセージは出ずに 文字化けした状態でdirの実行結果が表示されます。 この状態でラスターフォントに戻すと 韓国語で表示されます。 cmd /K "chcp 65001" cmd /K "chcp 20949" どちらでもフォントは違うけれども同じように表示されます。 結局、ラスタフォント以外のフォントにして dirを実行して文字化けした状態の実行結果になるので 再び、ラスタフォントに戻さないと 正しく韓国語で表示されないようですが、 この原因はわかりますでしょうか。

回答No.2

エクスプローラーでは他国語文字は見えても、DOS窓ではそうはいきません。 >韓国語の文字が■で表示されてしまいます。 それは使用しているフォントが適切でないためです。その文字が含まれているフォントでないと表示はできません。MSゴシック辺りだと表示できるかも。 >韓国語の文字が?の表示になってうまくいきません。 日本語だけの環境だと、まずコードページが違います。また、日本語以外の特殊な文字をリダイレクトするには、その言語がシステムの言語になっていないと駄目だと思います。純粋な日本語環境では無理でしょう。言語を追加することは可能ですので、やればできると思いますが。 ハードルの高いDOS窓でのコマンドの実行よりも、ファイルの一覧を取得するのが目的のはず。あるかどうかは知りませんが、ファイルのリストをテキストやクリップボード経由で出力できるようなソフトを探した方が早いのでは?。他言語文字が使えるかどうかはそのソフト次第ですけど。

ID_20150222
質問者

お礼

回答ありがとうございます。 >ハードルの高いDOS窓でのコマンドの実行よりも、 >ソフトを探した方が早いのでは このようなソフトを探してみましたが見つかりませんので ハードルが高いのかもしれませんが DOS窓でのコマンドの実行でしか確認することができませんでした。 >MSゴシック辺りだと表示できるかも。 コマンドプロンプトのプロパティのフォントタブで MSゴシックにすると dirで韓国語が表示されるようになりましたので このフォントで韓国語が表示されることが 分かりました。 >日本語以外の特殊な文字をリダイレクトするには、 >その言語がシステムの言語になっていないと駄目だと思います。 コマンドプロンプトのプロパティのフォントタブで MSゴシックにすることで、 韓国語が表示できるMSゴシックがシステムの言語になった と理解してよろしいでしょうか。 dir > list.txt でテキストファイルにして type list.txtで中身を表示すると 韓国語が?で表示されますが なぜdirでは韓国語が表示されているのに ファイルにすると韓国語が表示されなく なってしまうのでしょうか、どうすれば ファイルにした時にも韓国語が表示される ようになるのか分かりますでしょうか。

  • mdmp2
  • ベストアンサー率55% (438/787)
回答No.1

コマンド・プロンプトの文字コードはSHIFT-JIS だそうです。 文字コードをUTF-8 にしてみてください。 コマンド・プロンプトを開き、dir を実行する前に次のコマンドを実行します。 c:\windows\system32> が開いている時、 c:\windows\system32>cmd /K "chcp 65001" と入力し、エンターします。

ID_20150222
質問者

お礼

cmd /K "chcp 65001" を実行した後に、 韓国語の文字列を含むファイルのあるフォルダをdirで 表示すると以下のような表示になってしまいます。 何が起きているのかよく分からないのですが この原因と対処方法は分かりますでしょうか。 ---------------------------------------------- Active code page: 65001 C:\Windows\System32>dir C:\document\lesson\Youtube\ Volume in drive C has no label. Volume Serial Number is 0E4B-AC7B The system cannot write to the specified device. C:\Windows\System32>

関連するQ&A

  • フォルダ(ディレクトリ)の一覧をプリントできますか

    フォルダ(ディレクトリ)の一覧を プリントしたいと思っています。 コマンドプロンプトで dir /s /b > aaa.txt を実行すると フォルダ(ディレクトリ)とその中のファイル名が aaa.txtに入ってしまいました。 フォルダ(ディレクトリ)のみ ファイルにいれるか プリントする方法があったら 教えてください。 よろしくお願いします。

  • MS-DOSでファイルの一覧表示 「ワイルドカード」の利用方法

    Windowsのコマンドプロンプトで、ファイル名が5文字のファイル一覧を 表示させたく、以下のコマンドを実行しましたが、 表示させたくないファイルも表示されてしまいました。 ワイルドカード(クエスチョン)の使い方が間違えているのでしょうか。 アドバイスをお願い致します。 ファイルの構成 1.txt 12.txt 123.txt 1234.txt 12345.txt 取得したいファイル 12345.txt 実行したコマンド dir /b ?????.txt 表示結果 1.txt 12.txt 123.txt 1234.txt 12345.txt OS:WindowsXP PRO

  • コマンドプロンプトで

    コマンドプロンプトで dir > list.txt と書いたbatファイルを作成し実行すると、中にあるフォルダ・ファイルの一覧ができますが、中にあるフォルダ名のフォルダ・ファイル名までは取得することができません。 一番下フォルダのファイル名まで取得する方法はありますでしょうか? よろしくお願いします。

  • FTPで一覧リストを作成し取得(Get)したい

    VBで、FTPサーバに接続し、指定のディレクトリーからいくつかのファイルをダウンロードしています。ダウンロードするファイル数が沢山あり、出来る事なら、そのディレクトリー内のファイル名の一覧リストがほしいのです。DOSコマンドから見るときは、'ls'や'dir'は使えるのですが、一覧の作成ができません。DOSプロンプトからFTPサーバをOPENし、dir > aaa.txt と入力すると自端末のC:\document and Settings\自分のフォルダー配下に、そのaaa.txt は作られるのですが、中身が入ってきません。ファイルの一覧がほしいとき、VBではどのようにコーディングすればいいのでしょうか。教えていただければ本当に助かります。よろしくお願いいたします。

  • 韓国語が含まれたファイル名を変換したい

    韓国の友人からもらった画像データのファイル名が韓国語(ハングルと数字)になっているため、バックアップなどを取ることができません。 ファイル名を一括変換するソフトがフリーフェアでたくさんありますが、韓国語が入っているファイルは認識されません。 そこで韓国語が入っているファイル名で処理できるソフトをご存じないです?いま考えているのは特定のフォルダーのファイル名をCSVでリスト化して表示するとファイル名が『??070803.jpg』といった具合になるので『??』を『photo』とかに置換してさらにそれをそのCSVデータを読み込ませファイル名をリネームできたらとおもったいるのですが、そういったソフトウェアもありません。 今探しているのは 1.韓国語を含んだファイルをフォルダーを指定することで英語のファイルに変換できるソフト または 2.韓国語を含んだファイルをフォルダーを指定することCSVでリスト化でき、そのリスト内から韓国語データを削除し、再度CSV入力することでファイル名が変換できるもの 1.2のどちらかを探しています。

  • FTPサーバーから受信したファイル一覧からファイル名だけを取得したいです

    こんばんは。いつもお世話になっております。 VB.NET+WinXPなのですが、 FTPサーバーにログインして、 LISTコマンドでファイル一覧を要求すると 「drwxrwxr-x 2 53 53 4096 Feb 28 2006 abc」 などというファイルやフォルダの一覧がかえって来ると思うのですが、 この中からファイル名やフォルダ名だけを取得するには どうしたらよいでしょうか。 TABやコンマが入っていないので、文字列関数で切り取るにも 区切りがわからないと思うのです。 ローカルドライブのDir関数なら、FileAttribute.Nomalや.Directoryの指定でファイル名だけや ディレクトリー名だけを指定して 取得することが出来るのですが、FTPサーバーの場合からの場合はどういった方法があるでしょうか。 参考程度でも構いませんので教えて頂けるとたすかります。m(__)m

  • ファイル名変更(フォルダ名を前置きする)

    複数のフォルダにあるファイルのファイル名を、そのフォルダ名を前置きしたファイル名にリネームする方法はありませんか。 OSは7で、コマンドプロンプトからrenコマンドでできないか試したのですが思うようになりません。 行いたい作業例ですが、 ABCというフォルダ内にファイルがある場合、 1)001.txt → ABC001-00.txt 2)001-1.txt → ABC001-01.txt 3)001-11.txt → ABC001-11.txt 4)001-A.txt → ABC001-A.txt にしたいです。 1)~4)はルールことに分けて作業でもいいのですが、フォルダは複数あるため、一階層上から作業できる方がいいです。 AAAというフォルダ下に先のABCというフォルダ以外にDEFやGHIといったフォルダがあり、その下に001.txtや001-1.txtというフォルダがあるということです。 よろしくお願いします。

  • ftpコマンドで再帰的にフォルダとファイルを見たい

    コマンドプロンプトのftpコマンドを使用して、あるディレクトリ配下にあるフォルダとファイル一覧を再帰的に見たいです。 「コマンド:dir」では、ディレクトリ配下のフォルダ一覧は見れるのですが、フォルダの下にあるファイルまでは見ることができません。 どなたかご教授頂けるとうれしいです。 よろしくお願いします。

  • 日本語の入ったファイル名およびフォルダ名を一覧を作成するソフト

    一度にたくさんのファイルをZIPして送りたいのですが、 ZIPは日本語の入ったファイル名およびフォルダ名は 苦手です。 ということでリネームしたいのですが 日本語の入ったファイル名およびフォルダ名を一覧を 作成するソフトはないでしょうか?

  • 共有フォルダの一覧作成(フォルダ・ファイル含む)

    VBAまたはコマンドプロンプトのどちらかを使用して、共有フォルダ内のサブフォルダ及びファイルの一覧をエクセルすることは可能でしょうか。 フォルダの使用状況を確認したいのですが、階層が深く、分岐も多い為、簡単に作成出来る方法がありましたら教えてください。 宜しくお願い致します。