【.cmd】 バッチファイルスクリプト %15 【.bat】 (768レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
47
(1): デフォルトの名無しさん [sage] 2022/11/03(木) 06:22:30.68 ID:7S7IyYLz(1/5) AAS
@echo off
:x
set "a=%~n1"
ren "%~1" "%a:~0,4%%a:~8%%~x1"
shift
if not "%~1"=="" goto x

ファイル名やフォルダ名が英数字だけならこれでいけるんじゃね
56: デフォルトの名無しさん [sage] 2022/11/03(木) 16:10:12.19 ID:7S7IyYLz(2/5) AAS
>>52
52(1): デフォルトの名無しさん [sage] 2022/11/03(木) 15:28:23.28 ID:/STCGL2q(1) AAS
46様、47様、48様
>>44です。
早速のご回答&アドバイス、ありがとうございました。
どの方法でもうまくrenameでき、とても参考になりました。
ただ、for文に組込むと、1つ目のファイルだけ、
2回処理が実行されてしまいます。
例えば、以下のバッチ
-------------------------------------------
for %%i in (*.m4a) do (
set "vv=%%~ni"
call ren "%%~i" "%%vv:~0,4%%%%vv:~8%%%%~xi"
)
-------------------------------------------
を実行すると、
a1234567890a.m4a→a123.m4a ←2回
b1234567890b.m4a→b123890b.m4a
c1234567890c.m4a→c123890c.m4a
となってしまいます。
これは、私のfor文の使用法に誤りがあると考えられ
ますので、自力解決すべく調べているのですが…
参考になりそうなサイトなどご存知でしたら、教えて頂けませんでしょうか?
何度も申し訳ありません。
だから for (*) do ren ~ はお勧めしない
同じファイルに複数回処理する可能性がある
ren を move にして別のフォルダに送れ
!文字がある時は for の内部で遅延展開設定、解除しろ
57: デフォルトの名無しさん [sage] 2022/11/03(木) 16:37:27.42 ID:7S7IyYLz(3/5) AAS
for /f "delims=" %%i in ('dir *') do (ren ~ でもいいかな
58: デフォルトの名無しさん [sage] 2022/11/03(木) 16:40:46.92 ID:7S7IyYLz(4/5) AAS
すまんdir/bだ
60: デフォルトの名無しさん [sage] 2022/11/03(木) 17:41:34.26 ID:7S7IyYLz(5/5) AAS
ない
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.031s