【しばらく編集不可モードで運営します】 編集(管理者用) | 差分 | 新規作成 | 一覧 | RSS | FrontPage | 検索 | 更新履歴

NewPage - 新バージョン使って見ました。

新バージョン使って見ました。

以前のデータを移行しようとしたら大変な作業になる事に気が付いた(^^ゞ

データを移行し終わって別のサーバにコピーしたら全ログファイルの全行後で改行されてもう直すのが嫌になった。

一体どうしたモノやら

dbmopenを利用しないでtxtに保存するのは複数管理人体制をとっている時に非常に便利(一人でやってたってtxtファイルの直接編集の方が楽)なのだが

バージョンアップを採用すべきかどうか ん〜(^_^;)


えーとですね。Perlを使っていったんテキストに落として、 あとぐにゅぐにゅすれば移行できないかな…。 というか、新バージョンの仕様が固まったら、 昔のデータを持ってこようかなと思っています。 そのときにスクリプトを作ることになるでしょう。 期待せずに待っててください。

__DATA__ 以降にデータを書き写さなくても、dbmopen して 1ページずつテキストに落としていけばいいんちゃう? 下 の foreach(@all) を foreach(keys %database) にするとか。

そうです、そうです。 たまたま古いYukiWikiのデータを いったんひとつのファイルにしてgetしちゃったので、 以下のスクリプトを使って分解したのでした。 まあ、お好きに、ということです(^_^)。

 

    以下、スクリプト
$all = join('', <DATA>); @all = split(/--------------------------------------------------------------------------------\n/, $all); foreach (@all) {
    @x = split /\n/;
    $title = shift @x;
    print $title,"\n";
    $filename = &make_filename($title);
    open(FILE, "> $filename");
    foreach (@x) {
        print FILE $_, "\n";
    }
}

sub make_filename {

    my ($key) = @_;
    my $enkey = '';
    foreach $ch (split(//, $key)) {
        $enkey .= sprintf("%02X", ord($ch));
    }
    return "$enkey.txt";
} __DATA__ これ以降に元データを、 ・一行目はファイル名 ・二行目以降が内容 ・区切り記号は -------------- の形式で記入。