
ある日本語で書かれたファイルの名称をバッチファイルで変更しようとしています。
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ランキング
-
.txtではなく.logの方が良いの...
-
テキストファイルのタブをカン...
-
多数のサブディレクトリ内のフ...
-
ファイルの最後に文字列挿入
-
バッチ(bat)でリストファイルか...
-
UWSCでテキストファイルを開い...
-
コマンドプロンプトで指定した...
-
シェルでファイルから1行づつ...
-
unlinkで削除されないのは?
-
VBScriptでtxtファイルの中身を...
-
テキストファイルで提出とは?
-
COPYコマンドで結合すると余計...
-
ファイル名の一部をbatで変更し...
-
エクセルのVBAについて とある...
-
ftpコマンドを実行すると「425 ...
-
コマンドプロンプトのエラーに...
-
win10の「フォト」で、「次へ」...
-
大量のフォルダからひとつのフ...
-
一括でフォルダと同じ名前にフ...
-
コマンドプロンプトの「%1」と...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
.txtではなく.logの方が良いの...
-
VBAでワークシートを引数として...
-
テキストファイルで提出とは?
-
多数のサブディレクトリ内のフ...
-
psqlでエラーログをとりたい
-
拡張子を元に戻す
-
COPYコマンドで結合すると余計...
-
バッチファイルからVBAに引数を...
-
renameコマンドについて
-
ファイルの最後に文字列挿入
-
3つ以上のテキストファイルをコ...
-
バッチファイルで文字列削除に...
-
VBSでフォルダ内のテキストファ...
-
ftpコマンドで複数のファイルを...
-
ファイル内容の修正、行削除に...
-
★★★PowerShellのpatternについ...
-
コマンドプロンプトで指定した...
-
forfilesで検索したファイルを...
-
バッチファイル 複数ファイル...
おすすめ情報