---- Support BBS ----
[00050] 1402 byte
投稿日時: 1999年10月25日(月) 23時32分17秒
ホスト名: INS178.nagoya.dti.ne.jp(210.159.134.178)
Re: ファイル操作についての質問(秀丸+田楽サーバ)
Shira さん、こんばんは。
杉浦 まさき です。
> 質問なのですが次のような操作が可能でしょうか。
「DirA にある(*.org という名前の)全ファイルを検索する」
↓
「見つかったファイルの拡張子を *.edC/*.edD に変えたものが DirB にあれば、
DirA にある *.org ファイルを DirC/DirD に移動する」
という操作でよろしいでしょうか?
それなら以下のようなマクロで可能になるかと思います。
#上記のフォルダのある場所を "C:\Dirs" としておきます。
また、コマンドが失敗した時のチェックを省いていますので、
適宜それらを追加して下さい。
//----------------------------------------------------
run "dgserver.exe";
ddeinitiate "DengakuServer", "AllService";
ddeexecute "setcurdir C:\\Dirs";
ddeexecute "enumfile .\\DirA\\*.org";
while (1) {
$file = dderequest("findnext");
if ($file == "") break; // もうファイルがない
$file = leftstr($file,strlen($file)-3); // "*.org" の "*" を取り出す
if (existfile("C:\\Dirs\\DirB\\" + $file + "edC")) {
// *.org を DirC に移動
ddeexecute "move .\\DirA\\" + $file + "org .\\DirC";
} else if (existfile("C:\\Dirs\\DirB\\" + $file + "edD")) {
// *.org を DirD に移動
ddeexecute "move .\\DirA\\" + $file + "org .\\DirD";
}
}
ddeexecute "exit";
endmacro;
//----------------------------------------------------
#ちなみに、このままだと DirB に *.edC と *.edD が両方存在する場合は
*.org が DirC に移動されます。
<49> ファイル操作についての質問(秀丸+田楽サーバ) (Shira) 10/25 19:26
└>50< Re: ファイル操作についての質問(秀丸+田楽サーバ) (杉浦 まさき) 10/25 23:32
└<51> Re: ファイル操作についての質問(秀丸+田楽サーバ) (Shira) 10/26 18:50
└<52> Re: ファイル操作についての質問(秀丸+田楽サーバ) (杉浦 まさき) 10/27 02:00
---- Support BBS ----