![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
ある日本語で書かれたファイルの名称をバッチファイルで変更しようとしています。
rena.bat (以下中身) -------------
rename "ごろ猫のサンバ.txt" "test.txt"
---------------------------------
実行すると「The system cannot find the file specified. 」の表示です。
しかし、MS-DOSプロンプトのコマンドラインから直接
> rename "ごろ猫のサンバ.txt" "test.txt"
を打ち込むと正常に動いてくれます。
目的はリネームをしようという事ではなく、バッチファイル中の日本語を含むファイル名(+パス)の取扱いができないことで派生して色々検証した結果、取り扱えないという状況で質問している次第です。
何か勘違いしているのでしょうか。バッチファイル中で日本語ファイルを取り扱うにはどうしたらいいのでしょうか?ご存知の方、ご教授ください。
No.3ベストアンサー
- 回答日時:
> 「現在のコード ページ: 932」と出て
ということはコマンドプロンプトの話でしょうかね。
XPの場合ですが、
コマンドプロンプトのウィンドウのアイコンの上で右クリックすると表示されるメニューから『規定値』を選択すると現われるダイアログで
オプションタブの規定のコードページを932にすれば最初から日本語モードでコマンドプロンプトが起動するようになりますけど。
No.2
- 回答日時:
ANo.1 です。
あまり詳しくないのにすみません。Windows のDOS プロンプトは少し使ったことがありますが、
マルチタスク?故なのかBATchファイルの記述順どおりに
「起動完了を待つ」ことはしてくれない印象があります。
windows98あたりでは DOS ベースでしたので気にしてませんでしたが、
NT か W2k あたりから DOS プロンプトは「シミュレーション」に
なったとか...
つまり本件では、
JP
を完了する前に次の
rename
を実行し始めてるのだろう、と思います。
途中で時間のかかりそうな処理を入れるとか、
キー入力待ち...pause とか wait とかありませんでしたっけ...
を
挿入すると解決するかも。
No.1
- 回答日時:
Windows XP Pro SP2 ですが、
質問者さんと同じバッチを作ったら、
ちゃんとリネームできましたよ。
BAT を動かすと、たしか子プロセスでcommand.com を使うので、
そっちの環境が日本語を使えるようになってないのかも知れません。
BAT ファイル中で日本語環境を生かす
JP
を入れてみたらどうでしょ?
この回答への補足
ありがとうございます。
rena.batの中身を
------------------
JP
rename "ごろ猫のサンバ.txt" "test.txt"
------------------
とすると
「現在のコード ページ: 932」と出てrenameが実行されません。
もう一度、rena.batの中身を
------------------
rename "ごろ猫のサンバ.txt" "test.txt"
------------------
だけにして実行してみると(JP実行後)、うまく動きました。
どうやらJPを動かした後に実行しなければいけないみたいですね。
ですが、JP実行後、そのまま次のコマンドを動かすにはどのようにbatファイルを書けばいいのでしょうか?一番上で記載しているbatファイルではJP実行後に終わっているようです。
ご存知であれば教えてください。よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
.txtではなく.logの方が良いの...
-
バッチ処理でファイルの中身を...
-
多数のサブディレクトリ内のフ...
-
VBAでワークシートを引数として...
-
psqlでエラーログをとりたい
-
テキストファイルで提出とは?
-
バッチファイル 複数ファイル...
-
COPYコマンドで結合すると余計...
-
3つ以上のテキストファイルをコ...
-
ファイル内容の修正、行削除に...
-
コマンドプロンプトでスペース...
-
Windowsのバッチファイルを利用...
-
WSH 日本語ファイル名の認識
-
★★★PowerShellのpatternについ...
-
バッチファイルで文字列削除に...
-
C言語のプログラム中に使うsyst...
-
cshでファイルサイズ取得
-
日本語名ディレクトリーから日...
-
拡張子を元に戻す
-
batファイルについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
VBAでワークシートを引数として...
-
多数のサブディレクトリ内のフ...
-
.txtではなく.logの方が良いの...
-
拡張子を元に戻す
-
COPYコマンドで結合すると余計...
-
テキストファイルで提出とは?
-
Windowsのバッチファイルを利用...
-
renameコマンドについて
-
ファイルの最後に文字列挿入
-
forfilesで検索したファイルを...
-
バッチファイル 複数ファイル...
-
バッチファイルからVBAに引数を...
-
psqlでエラーログをとりたい
-
テキスト(txt)→ワード(docx)へ...
-
バッチファイルで文字列削除に...
-
VBAでエクセルをtxtに変換する...
-
accessでSQL文を使ってcsvファ...
-
コマンドプロンプトでファイル...
-
ファイル内容の修正、行削除に...
おすすめ情報