[前の記事]« ロケール情報が不統一な複数のPCでYYYYMMDD形式の日付を取得したい
[次の記事]通常の環境変数と遅延環境変数の組み合わせかた »

関連オンラインソフト配布サイト:
Vector>ダウンロード(top) |>MS-DOSまたは汎用 | >WindowsVista/XP/2000/NT

▲カテゴリー「COPY,XCOPY…ファイルやディスクの複写・連結・バックアップ」索引へ
▲カテゴリー「DEL,ERASE,REN…ファイル削除/復活/移動/名前の変更」索引へ

長さが異なる新しいファイル名の生成方法

409.
異なる文字数のファイル名へのコピー
2005年04月29日(金) 09時36分
komattemasu
●DOS/Windowsのバージョン↓
winXPです。

基本的な事なのかもしれませんが、初心者ですのでお許しを。

0000_d64_000(0は変数です)というファイルを
0000_sh64_000というファイル名に変えてコピーするバッチファイルを作りたいのですが、なかなか上手くいきません。
例えば、

copy ????_d64_???  ????_sh64_??? では
1234_d64_567 が 1234_sh64_67 になってしまいます。

ちなみに同じ文字数のファイル名コピー
(1234_d64_567 を 1234_s64_567)
は問題なくできます。

このような場合どうすればよいのでしょうか?
よろしくお願いします。

?
410.
Re:異なる文字数のファイル名へのコピー
2005年04月29日(金) 11時35分
じゃく
こんにちは。


>●DOS/Windowsのバージョン↓
>winXPです。

>0000_d64_000(0は変数です)というファイルを
>0000_sh64_000というファイル名に変えてコピーするバッチファイルを作りたいのですが、なかなか上手くいきません。
>例えば、

>copy ????_d64_???  ????_sh64_??? では
>1234_d64_567 が 1234_sh64_67 になってしまいます。

ファイル名に空白がないとすると、以下のようなバッチでコピー可能です。
動作については、set /?で環境変数の内容の置換についてご確認ください。ただし、文字列の置換を行っているため、ファイル名先頭の
4文字が_d64だった場合は希望通りの動作にはなりません。
(ファイル名5文字目からの_d64と混同するため)


-------------------------- sample.bat

for %%a in ( ????_d64_??? ) do call :sub %%a
exit /b
:sub
set f=%1
set f=%f:_d64_=_sh64_%
copy %1 %f%
goto :EOF
415.
Re2:異なる文字数のファイル名へのコピー
2005年04月29日(金) 21時28分
komattemasu
ありがとうございます。
正直理解できていませんが、お教え頂いた数式を研究して、自分の環境に合わせたいと思います。
でも、また解らなくなって質問した際は、どうかよろしくお願いします。
 
 


カテゴリー「COPY,XCOPY…ファイルやディスクの複写・連結・バックアップ」索引へ
カテゴリー「DEL,ERASE,REN…ファイル削除/復活/移動/名前の変更」索引へ

 

カテゴリー一覧

FPCU/FPCDIY QUICK LINK online
この上の各ジャンル名をクリックすると、下のウィンドウが切り替わります▼


=リンク集のインデックスはこちら=

資料書籍

About

2005年04月29日 15:12に投稿されたエントリーのページです。

ひとつ前の投稿は「ロケール情報が不統一な複数のPCでYYYYMMDD形式の日付を取得したい」です。

次の投稿は「通常の環境変数と遅延環境変数の組み合わせかた」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

This site is powered by Six Apart
Movable Type 3.33-ja
このブログについて | 運営:有限会社メディアポート