かつてQSOバンクというシステムがありました。
被災もあって惜しまれつつ終了。
この時得られた電子QSLカードの画像をハムログで交信時にヒット(表示)させてみたいと思いました。
ハムログ側では指定したフォルダにある、コールサインで始まるファイル名を検索してヒットさせています。
QSOバンクで保存したファイル名は
qbank001234_001234_JO1KVS.jpg
という名前です。
これではハムログではヒットしません。
頭の20文字を削除すればOKです。
すると同じ名前のファイルと重複してしまうので、後ろに(連番)を付けます。
これは名前を変更、で保存すると後ろに連番付けますか?とウィンドウズが聞いてきますのでハイを押せばOKです。
ところが、数千件の処理はとてもとてもやってられません。
そこでバッチ処理を行います。
cd I:¥temp
for %%F in (*.jpg) do call :sub "%%F"
goto :EOF
:sub
set A=%~1
set B=%A:~20%
ren "%A%" "%B%"
goto :EOF
これをメモ帳にコピペして、適当な名前を付けて保存してください。拡張子は .bat です。
最初の行は どこの、という意味ですので、Cドライブのtempフォルダでやりたい方は、IをCに直してくださいね。
さて、失敗してはいけないので、まずは元のファイルのコピーでやりましょう。
コピーを作業する tempフォルダに貼り付けます。
そしたらバッチファイルをダブルクリック。
出来ましたね。そして、出来なかったやつが大量に残っていると思います。
そしたら、出来たやつを別のフォルダに移してください。仮にtemp2というフォルダに移動させます。
またtempフォルダに残った画像に対してバッチファイルをダブルクリックしてみると・・・
先程弾かれたものが処理されたと思います。処理されたファイルをtemp2へ移動させます。
この時、同じ名前のファイルがあるぞ、どうする?と聞かれますから、両方のバージョンを保存する方法で貼り付けてください。
連番が追加されて別のファイルとして貼り付きます。
要するに連番入力はウィンドウズにやらせるわけです。
これを繰り返すと全部頭の20文字が取れます。
バッチファイルに、同じ名前になったら後ろの連番をつける、って命令を書けば一発なんでしょうけど・・・。
知識ないので・・・。
お試しください。絶対オリジナルはバックアップ取ってくださいね。