記事閲覧

− 野ざらし言 −

5278 一括リネームのテスト

めざら 2023/01/20(Fri) 15:12 http://mezala.la.coocan.jp/
フォトファイルに連番を付与するマクロのテストと備忘録です。

もともとの要求というのが,メモ代わりに撮影した写真のファイルに連番を付ける
というものです。そもそも元のファイル名が英字4文字と数字4文字なので,さらに
連番を付けるとロングファイルネームになってしまうわけで,通常の
ファンクションコールでリネームするのは危険かと思い込んでいたわけです。
それならデジカメの機種等を示す英字4文字は消してしまっておいて
連番を付ければいいかも…ということで試作し,
結果がロングになってしまう場合はどうなるのかいな…と思って実行したら,
ロングファイルネームでいけちゃったという……。

DOSのファンクションコールも長いファイル名対応なんすね……ってことで良いのか
悪いのかよくわからないんだけれど,まぁ結果オーライってことで。

ファイラーで選択したファイルを次のようにリネームします。
DIMG0764.JPG → DIMG0764_01.JPG
DIMG0765.JPG → DIMG0765_02.JPG
DIMG0766.JPG → DIMG0764_03.JPG
 … 以下,略。 …

= RnBnname.def   v0.10 = by H.ear
連番を振ったファイル名にリネーム(複数選択対応版)
ロングファイルネームでも可能なので,結果がショートに収まらなくてよい.
* mad for vz!
1 ^\ "" (s!=3)?.			;ファイラーのみ
	e=i-,				;<i>:マークファイル処理数
	(fl..5)??{			;マークしていなければ
		FM[-, ' ' FM],		;カーソル位置のファイルを選択
	}
	&Fi (r)??.			;選択ファイルの先頭へ
 :a	&Fg(pq..137,1)			;ファイル名を取得
	fv^=4, #V			;再表示
	&Sy(pq..137)			;パス名取得・解析
	(si>cx)?{ &Sc(pu,cx) }?pu.0-,	;拡張子抽出
	&Sc(pa,bx) pa.(cx-bx)-,		;ファイル名複写と拡張子切除
	&Sp(pq..134,"%s_%02d%s",pa,i+1,pu)
	dx=pq..137,			;old path / pathbuf
	di=pq..134,			;new path / tmpbuf
	ax=$5600, &i($21)		;Rename
	(r)?e++, ?i++,
	&Fn (r)?>a
	#U
	&m("success: %d file(s). / failure: %d file(s).",i,e)
*

関連記事一覧ツリー (▼ を押すとツリー全体を一括表示します)

- 5278.一括リネームのテスト - めざら 23/01/20-15:12

返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

おなまえ :
Eメール :
タイトル :
メッセージ: 通常モード(推奨)  整形モード(非推奨)  preモード(空白再現)
※ プログラムコード等を含まない場合は,できるだけ通常モードをご利用ください。

参照先 :
暗証キー: (英数字で8文字以内) プレビューなし


- 以下のフォームから自分の投稿記事を修正・削除することができます -

処理 記事No. 暗証キー