ファイル名の最後の部分の名前を変更する方法


0

名前を変更するファイルがいくつかあります。既存の名前の_thumbを削除したいです。

例:00700008_thumb.jpg
    00800104_thumb.jpg
    01200004_thumb.jpg

上記のファイルの名前を次のように変更します。

例:00700008.jpg
    00800104.jpg
    01200004.jpg

以下のコードを使用して、パーツを分離する方法。

@ECHO ON

SETLOCAL ENABLEDELAYEDEXPANSION
SET SourceDir=F:\Square.....

FOR /F "TOKENS=1-3 DELIMS=. " %%F IN ('DIR /B /A-D "%SourceDir%\*.jpg"') DO (
  SET "part1=%%~F" 
  SET "part2=%%~G" 
  SET "part3=%%~H"
  REN "%SourceDir%\!part1! !part2!.!part3!" "00!part2!.!part3!"
)
GOTO EOF

ファイルの名前を変更するにはどうすればよいですか?


あなたが提供したコードの結果は何ですか?すでにファイルの名前を変更しているように見えますか?
セス

3
非常によく似た質問をしたのはこれが6回目です。あなたが与えられた答えがどのように問題を解決するかを学ぶために時間をかけてください。その後、必要な変更を自分で行うことができます。
DavidPostill

2
@Seth彼は、彼の他の5つの質問から同様のコードを貼り付けており、毎回調整することを期待しています。私の他のコメントを参照してください。
デビッドポスティル

回答:


0

あなたの問題がこれらのファイルの名前を変更することである場合、あなたの例によれば、あなたはcdあなたが望むフォルダだけに次のコマンドを発行することができます:

for /F "useback tokens=1 delims=_" %I IN (`dir /B /A-D *.jpg`) DO (ren %~I_thumb.jpg %~I.jpg)

これはいいですね@ m4573r
Ezhilarasan

@dbenhamいいえ、そうではありません。を参照してくださいdelims=_%Iのみを含む00700008。ただし*_thumb.jpg、他のファイルがある場合に備えて、ディレクトリを作成することを検討します。
dave_thompson_085

おっと、それは恥ずかしかった。@ dave_thompson_085-見逃していたDELIMSを指摘してくれてありがとう。
dbenham
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.