|
yamasan さん今日は、ひろです。
> 結果を一覧して確認するために、DOSプロンプトなどで、
この事と、
> copy "e:\test\*.htm" e:\result.txt
この事の繋がりがよく分かりません。
yamasan さんのやりたいことは、*.htm を一つのファイルに纏め、尚且つ
纏められた結果は各々元となるファイルの部分の前に「空白行 (+ファイル名)」
を入れたいだけなのでしょうか? そうならば、以下のマクロで出来ます。
//----------------------- joint file macro -----------------------
disabledraw;
$dir = "e:\\test";//検索するフォルダ
$extension = "*.htm";//検索するファイル
//検索状態保存
#reg_search=searchmode;
$search=searchbuffer;
#search=searchoption;
if(!#reg_search){//検索にヒットした場合は範囲選択
writeininum "hidemaru.ini","Env","SelectFound",1;
envchanged;
}
grep ".",$extension,$dir,regular,filelist;
//サブディレクトリも含むなら、「subdir」を追加
while( code != eof ){
call GetFileName;
movetolineno 1,lineno + 1;
insertfile $$return;
if( column == 1)insert "\n";
insert "\n";
}
End://終了処理
//検索状態を元に戻す
if(!#reg_search){
writeininum "hidemaru.ini","Env","SelectFound",#reg_search;
envchanged;
}
setsearch $search, #search;
endmacro;
GetFileName://file name の取得
##topx = x;
##topy = y;
searchdown "\\([0-9]+\\)$",regular;
delete;//行番号削除
##endx = x;
##endy = y;
return gettext(##topx, ##topy, ##endx, ##endy);
|
|