

Windowsのbatファイルでrenameをするにはどうすればよいでしょうか?
カレントディレクトリ
└ A
というディレクトリ構造があって、Aの中には「a.txt」があるとします。
カレントディレクトリから、
「rename "./a/A.txt" B.txt」
と書いてあるbatファイルを起動しても、「a.txt」の名前が変更されません。
「指定したパスが見つかりません。」と出てきてしまいます。
ダブルクォーテーションを取ったりつけたり、絶対パス、相対パスを書いたりと
いろいろ試しましたがだめでした。
何か方法はないでしょうか?
No.4ベストアンサー
- 回答日時:
No1です。
すいません。A と a の違いに目が行ってしまってました。
>たとえばdirコマンドなどは「/」でも通ります。
通りません。/ はオプションの指定と解釈されます。
ただ、念のため確かめてみると、
"./filename" の時はdirでもrenameでも大丈夫ですね。copyなどでもOK。
"./dir/filename" だとdirでもrenameでも駄目です。
質問はこのケースに当たります。
ところが、リダイレクトの場合は、more < "./dir/filename" や more < "dir/filename" はOKですね。
なんとなくですが、「 " "で囲めば / も使えるようにしようと思ったけど途中でやめた」 感があります。
>なぜ同じコマンドプロンプトでコマンド毎に使えたり使えなかったりするのでしょう?
コマンドのプログラムの書き方次第なので、コマンドによっては、 / を受け付けたりします。
dir rename copy などはcmd.exeの中に組み込まれているので、同じ動きのはず。
別のプログラムである、fc.exe とかは / も使えますね。find.exe もOK。findstr.exe は駄目。
なるほど、そもそも統一されていないということなんですね。
基本的にWindowsを使う場合は、パス名は「\」を使ったほうが無難なようで…
わかりやすい説明、大変参考になりました。ありがとうございました。
No.3
- 回答日時:
コマンドラインスイッチとしてスラッシュを使う場合があります。
ということで、パス区切りにスラッシュが使えない。ということもあるでしょう。
# https://www.ipa.go.jp/security/awareness/vendor/ …
APIに直接渡す文字列としてならスラッシュでパス区切りに出来るかも知れませんが…。
コマンドライン引数だと、そのプログラムが使用している解析処理次第…でしょうね。
No.2
- 回答日時:
windowsですよね?
スラッシュではなくバックスラッシュ(円マーク)では?
この回答への補足
ありがとうございます。無事できました。
…が、ちょこっと調べてみたところ、Windowsではパスの区切りは「\(バックスラッシュ)」とのことですが、たとえばdirコマンドなどは「/」でも通ります。
なぜ同じコマンドプロンプトでコマンド毎に使えたり使えなかったりするのでしょう?
本文とそれた質問で大変申し訳ありませんが、もしよろしければご回答よろしくお願いします。
No.1
- 回答日時:
お書きのファイル配置なら、
>「rename "./a/A.txt" B.txt」
じゃなくて
「rename "./A/a.txt" B.txt」
ですね。まあ、Windowsは英字の大文字小文字を区別しないので、これが原因でエラーにはなりませんが。
ただ、大文字小文字に無頓着ということは、全角半角にも無頓着で間違えてたりしないでしょうか?
Windowsでも全角半角は区別されますので、正確に同じように指定する必要があります。
コマンドプロンプトの上に、ファイルをドロップするとフルパスファイル名が得られるので、それをコピペするのが間違いないと思います。
この回答への補足
すみません質問文のミスでした。
「rename "./a/A.txt" B.txt」
ではなく
「rename "./A/a.txt" B.txt」
で、名前変更ができないということです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) 図に示す階層構造で,現在のディレクトリ(カレントディレクトリという)が*印のディレクトリであるとき, 2 2022/11/16 10:55
- その他(プログラミング・Web制作) ファイル名の一部をbatで変更したい batファイルを使って、以下のようにファイル名の一部を変更した 3 2023/02/21 20:09
- Windows 10 renameコマンドでファイル名からアンダースコアを消す方法 5 2023/04/24 13:33
- その他(プログラミング・Web制作) フォルダ内の特定 拡張子のファイルを一括実行するBat ファイルについて 4 2022/04/17 09:51
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- その他(コンピューター・テクノロジー) <a href="file:///フォルダ名/ファイル名">リンクテキスト</a>について 1 2023/04/06 22:40
- その他(開発・運用・管理) フォルダの中にファルダを作成してファイルを格納するバッチコマンド 1 2022/06/30 11:39
- Excel(エクセル) フォルダAから1つのファイルだけを、フォルダBへを移動するVBAについて 2 2022/07/25 11:45
- Excel(エクセル) 【VBA】フォルダAにある2つのファイルの内1つを、フォルダBへ。もう1つを、フォルダBへ移動したい 6 2022/07/26 08:51
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
このQ&Aを見た人はこんなQ&Aも見ています
-
コマンドプロンプトでリネーム
その他(コンピューター・テクノロジー)
-
コマンドプロンプトの「%1」と「%~1」の違いがわからない
その他(プログラミング・Web制作)
-
【アクセスが拒否されました。】コマンドプロンプトでドライブにアクセスできません
その他(コンピューター・テクノロジー)
-
-
4
バッチでテキストファイルから任意の行のみ取得したい
その他(プログラミング・Web制作)
-
5
Windowsコマンドプロンプトのmoveコマンドが何度も構文エラーエラーを吐き出す件。
その他(プログラミング・Web制作)
-
6
コマンドプロンプトでのBATファイルで、定数文字列の記述方法
Windows Vista・XP
-
7
コマンドプロンプトのエラーについて
その他(パソコン・周辺機器)
-
8
ネットワークドライブ上ファイルのrename *.*
Windows Vista・XP
-
9
バッチファイルで昨日の日付を取得
その他(プログラミング・Web制作)
-
10
SQLPLUSで結果を画面に表示しない
Oracle
-
11
moveコマンドで別のドライブにフォルダを移動
その他(OS)
-
12
oracleのimp-00002エラーについて
Oracle
-
13
コマンドプロンプトで、指定したファイルが開いているかを判別をループする方法
その他(プログラミング・Web制作)
-
14
bat 同名ファイルコピー時にリネームして保存したい
その他(開発・運用・管理)
-
15
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
16
renameコマンドでファイル名からアンダースコアを消す方法
Windows 10
-
17
Windowsのバッチファイルで正規表現の置換方法について…
Windows 10
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
batファイルでrenameができませ...
-
C言語でファイル名を取得
-
Windowsで複数のファイルを同じ...
-
perlのNet::FTPで、ファイルか...
-
FindFirstFileとFindNextFileで...
-
readdir()で得られるファイル・...
-
vba dir の相対パス
-
Net::FTPを使いファイル一覧の...
-
コマンドプロンプトのタブキー機能
-
テーブルの更新について
-
スクロールバーを左側に、又は...
-
Perlで フォルダ内の全て...
-
CGIで日本語名ファイルのアップ...
-
コマンド「dir」の結果を、テキ...
-
複数ファイルの読み込みについて
-
C言語で特定の行を抽出する方法...
-
VBAでCSVファイルを途中行まで...
-
Perlの変数に文字数制限(容量...
-
close()で例外が投げられる理由
-
空白文字 \\f と\\v の違いに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
batファイルでrenameができませ...
-
Windowsで複数のファイルを同じ...
-
vba dir の相対パス
-
readdir()で得られるファイル・...
-
ディレクトリの判別
-
FindFirstFileとFindNextFileで...
-
パスから最後のディレクトリだ...
-
dos変数の%~dp0は powershellで...
-
C言語でファイル名を取得
-
Perlで フォルダ内の全て...
-
makefileでファイルをコピー(...
-
LinuxのC言語で、ファイル名の...
-
下のディレクトリ(3つ)に含ま...
-
正規表現で、特定のファイル名...
-
chdirがうまくできない
-
Net::FTPを使いファイル一覧の...
-
ディレクトリ名を取得したい
-
ディレクトリのファイル作成を...
-
空白を含むディレクトリにある...
-
ファイル名をデータとして取り...
おすすめ情報