ファイル名の置換 No.04232
vantorio さん 04/03/29 06:47
 
マクロか既存の秀丸の機能でフォルダ内のファイル名
を一括置換したいのですが、今一どこから手をつけて
いいのかわかりません。
ファイル名にスペースがあったら_に置換したいのですが。


[ ]
RE:04232 ファイル名の置換 No.04233
アルビレオ さん 04/03/29 08:05
 
秀丸ユーザーのアルビレオです。

>マクロか既存の秀丸の機能でフォルダ内のファイル名
>を一括置換したいのですが、今一どこから手をつけて
>いいのかわかりません。

秀丸はテキストエディタなのでファイルの内容を変更することはできますがファ
イル名を変更する機能はありません。
(「名前を付けて保存」だと元のファイルは残ってしまいますからね)

すでにあるファイルの名前をマクロを使って変更したいなら、コマンドラインで
renコマンドを実行したりマクロサーバや田楽サーバ、田楽DLLのような外部ツー
ルを呼び出す形になります。
コマンドラインだとWindowsのバージョンによってやり方に違いがあります。
マクロサーバ他を使うなら、あらかじめインストール(といってもファイルのコ
ピー程度)をしておく必要があります。

>ファイル名にスペースがあったら_に置換したいのですが。

この程度なら、秀丸ではなくファイル名変換の専用ツールを使った方が楽だと思
いますが。

[ ]
RE:04233 ファイル名の置換 No.04234
ENCODINGSHIFTJIS さん 04/03/29 10:56
 
>>ファイル名にスペースがあったら_に置換したいのですが。
>この程度なら、秀丸ではなくファイル名変換の専用ツールを使った方が楽だと思い
>ますが。

同感です。
------------------- 作ると仮定すると 一例では
// バッチコマンドをその場で作って実行の形
// 一般的にはPerlとかRubyとかPythonを動かす場面だ

// 新しい面を開いてから、実行します。

runsync "cmd.exe /C dir /B *.TXT >DIR.TXT";
insertfile "DIR.TXT";
gofiletop;

// 1行分のサンプル 秀丸の行長はコマンドが折り返さない十分な
// 長さを確保すること. 操作がとてもエディタ的

dupline;
selectline;
replaceall " ","_",inselect;
golinetop;
backspace;
insert "\" ";
golinetop;
insert "REN \" ";

// 繰り返し次行に行く。
// あとはBATファイル保存してrun実行



[ ]