写真集

Camera:Panasonic LUMIX DMC-LX3
Vine Linux と Ubuntu の設定方法など

PowerShell で grep like なスクリプトを書いてみました

2017-06-20 00:11:02 | Windows7
$pattern1="^\+"
$pattern2="^\+{3}"
$pattern3="^\+.\s*//"

$InputFileName="test1.diff"
$OutputFileName="out.txt"

# 取得したファイルを改行区切りで string[] にしてパイプに流す(改行コードは含まれない)
Get-Content $InputFileName | Out-String -Stream | `
# 正規表現で「+ 追加行」のを取得する
Select-String $pattern1 | `
# 正規表現で「+++ ファイル名」以外の行を取得する
Select-String $pattern2 -NotMatch | `
# 正規表現で「+ //コメント行」以外の行を取得する
Select-String $pattern3 -NotMatch | `
# コンソール表示幅の80文字(初期値)で改行されないようにして、ファイルに出力をする。
Out-String -Width 10000 | Out-File $OutputFileName

grep.ps1

PowerShell で sed like なスクリプトを書いてみました

2017-06-19 22:58:27 | Windows7
$pattern1="^\+{3}"
$pattern2="^\+{3} "

$InputFileName="test.diff"
$OutputFileName="FileList.txt"

# 取得したファイルを改行区切りで string[] でパイプに流す(改行コードは含まれない)
Get-Content $InputFileName | Out-String -Stream | `
# 正規表現で「+++ ファイル名」の行を取得する
Select-String $pattern1 | `
# 各行をforeachで置換処理をする
ForEach-Object { $_ -replace $pattern2 , "RootFolderName/" } | `
# コンソール表示幅の80文字(初期値)で改行されないようにして、ファイルに出力をする。
Out-String -Width 10000 | Out-File $OutputFileName

sed.ps1

オンラインのシステムからvhdを作成できるツール

2011-11-17 10:34:24 | Windows7

スナップショットからVHDフォーマットを作成できるそうです。テスト環境作りに使用出来そうです。後で試してみようと思います。

Disk2vhd は、Microsoft Virtual PC または Microsoft Hyper-V 仮想マシン (VM) で使用する、物理ディスクの VHD (Microsoft Virtual Machine のディスク フォーマットである仮想ハード ディスク) バージョンを作成するユーティリティです。

Disk2vhdのダウンロードサイトへ


FlexSDKでActionScriptをビルド

2011-05-19 22:38:55 | Windows7

package
{
    import flash.display.Sprite;
    import flash.text.*;
 
    public class TextWithImage extends Sprite
    {
        private var myTextBox:TextField = new TextField();
        private var myText:String = "Hello World";
 
        public function TextWithImage()
        {
            addChild(myTextBox);
            myTextBox.text = myText;
        }
    }
}

 

d:\AIR> path D:\AIR\flex_sdk_4.1.0.16076\bin
d:\AIR> mxmlc TextWithImage.as


VAIO type U のリカバリーDVDから起動HDDを作成してみました

2011-02-26 22:08:17 | Windows7

VirtualBox でリカバリーDVDからリカバリーHDD(ハードディスク)作成してみました。
SonyのDVDドライブじゃないと起動しないのでハードディスクからなんとか起動できないかと模索していました。
Windows XP Pro です。予めリカバリーDVD (CD) をSonyのリカバリー作成ツールで作成しておきましょう。

Ubuntu 10.10 (or 10.04)を使用します。

  1. リカバリー領域を作成します。
    ディスクユーティリティで、リカバリーDVD容量を確保します。
    2.5~5GB、NTFS、ブート可能、で作成します。

  2. MBRを復元します。sudo fdisk -l でハードディスクを確認しておきましょう。
    sonyフォルダのMBRファイルから復元します。(パーティション情報は入っていないみたいですね)
    $ sudo dd bs=384 count=1 if=/media/RECOVERYDISK/sony/mbr.dat of=/dev/sdb
    ブートトラップローダー部分だけを復元なので384です。(仕様は446byteなのですが、384以降00だったので384にしました)残りはパーティション情報みたいです。

  3. I386 フォルダ中の下記の2つのファイルをルートに(トップ)にコピーします
    1) ntdetect.com
    2) setupldr.bin は、 ntldr にファイル名を変更します。
    ディスクユーティリティでNTFSのフォーマットをすると、bootmgr or ntldr のファイルをロードするようです。
    MBR -> Active Partition の先頭 -> Active partiton がNTFSの場合は bootmgr か ntldr を load します。
    (Initial Program Load [IPL])
  4. 残りはそのままコピーします。
    i386フォルダは minint に名前を変更します。

  5. 作成したハードディスクのMBRをバックアップします。
    $ sudo dd bs=512 count=1 if=/dev/sdb of=vaiombr.img

  6. 起動します。
    機種を判定しているためVirtualBoxでは起動しませんが、該当VAIOなら起動するでしょう。
    HDDを交換するのが面倒なので実機では試していません。



システムイメージの作成で作成したイメージを新しいHDDで復元してみました

2011-02-23 01:25:08 | Windows7

Windows 7 でシステムが元気なうちに、まずはシステムイメージの作成
メインで使うソフトはインストールしてからがいいですね。

イメージの作成はこちらを参照します。
http://itpro.nikkeibp.co.jp/article/COLUMN/20100818/351269/

ネットワーク先、またはシステムが入っていないデータディスクにとります。
システム修復ディスクも作成しましょう。
メーカーの回復領域(Windows RE)を取り出して新しいHDDに移行するよりも楽ですね。

 






ディスクの除外ボタンを押してバックアップ設定を確認します。



ディスク0が新しいハードディスクでシステムの復元先なのでチェックは付けません。
他のディスクが表示されていたら除外のチェックマークを入れておきましょう。
ディスク1は、WindowsImageBackup フォルダがあるデータハードディスクです。
元のシステムが入っているハードディスクは外さないと、新しいハードディスクに復元できません。強制的に元のハードディスクに復元されますので、注意しましょう。新しいハードディスクに移行できません。なんでだろう面倒ですね。


完了を押すと復元作業が開始されます。


Windows RE を新しいハードディスクで起動してみました

2011-02-22 20:20:44 | Windows7

Onkyo PCのハードディスクに入っているリカバリー領域(回復パーティション)を新しいハードディスク(HDD)へ引越しさせてみました。
Virtualboxによるテストです。(ONKYO-RECOVERY)

Ubuntu 10.10 (or 10.04)のLiveCDを使用します。

  1. ハードディスクを確認します。
    $ sudu fdisk -l
    ディスク /dev/sda: 500.1 GB, 500107862016 バイト
    ヘッド 255, セクタ 63, シリンダ 60801
    Units = シリンダ数 of 16065 * 512 = 8225280 バイト
    セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    ディスク識別子: 0xcf423475

    デバイス ブート      始点        終点     ブロック   Id  システム
    /dev/sda1               1          39      307200   27  不明
    パーティション 1 は、シリンダ境界で終わっていません。
    /dev/sda2              39        2589    20480000    7  HPFS/NTFS
    /dev/sda3   *        2589       31695   233799680    7  HPFS/NTFS
    /dev/sda4           31696       60801   233793945    7  HPFS/NTFS
  2. MBRのバックアップ
    $ sudo dd bs=512 count=1 if=/dev/sda of=/media/BackupHddName/mbr.img

  3. Windows RE 領域のリカバリー
    自動マウントされないので、RE領域をマウントします。
    $ sudo mount -t ntfs /dev/sda1 /mnt
    $ cp -r /mnt/recovery /media/HddLabelName

  4. Onkyoのディスクイメージを取り出します。
    こちらは自動マウントされていました。
    $ cp -r /media/ONKYO-RECOVERY /media/BackupHddName

    もしマウントされていなければマウントしてからコピーします。
    $ sudo umount /mnt
    $ sudo mount /dev/sda2 /mnt
    $ cp -r /mnt/recovery /media/BackupHddName

  5. C drive からブートに必要なファイルをバックアップします。
    $ mkdir /media/BackupHddName/cdrive
    $ cp /media/Windows\ 7/bootmgr /media/BackupHddName/cdrive
    $ cp -r /media/Windows\ 7/boot /media/BackupHddName/cdrive

  6. BCDファイルを編集します。
    Windows7 のコマンドプロンプトを管理者で起動します。(アクセサリ>コマンドプロンプトを右クリックして、管理者で起動)
    BCDファイルを適当なフォルダへコピーします。
    C:> mkdir d:\editBCD
    C:> copy d:\cdrive\boot\BCD d:\editBSD
    C:> d:
    D:> cd edit\BCD
    D:> d:\editBCD
    D:\editBCD> Bcdedit -store BCD -create {ramdiskoptions} /d "Ramdisk options"
    Bcdedit -store BCD -set {ramdiskoptions} ramdisksdidevice  boot
    Bcdedit -store BCD -set {ramdiskoptions} ramdisksdipath  \recovery\windowsre\boot.sdi
    Bcdedit -store BCD -create /d "onkyo recovery" /application osloader

    エントリ {530a995b-3e72-11e0-a907-0013722cf7bc} は正常に作成されました。
    最後に表示されますので変数BCDIDに登録します。

    set BCDID={530a995b-3e72-11e0-a907-0013722cf7bc}

    Bcdedit -store BCD -set %BCDID% systemroot \Windows
    Bcdedit -store BCD -set %BCDID% detecthal Yes
    Bcdedit -store BCD -set %BCDID% winpe Yes
    Bcdedit -store BCD -set %BCDID% osdevice ramdisk=[boot]\recovery\windowsre\winRE.wim,{ramdiskoptions}
    Bcdedit -store BCD -set %BCDID% device ramdisk=[boot]\recovery\windowsre\winRE.wim,{ramdiskoptions}

    D:\editBCD>bcdedit -store bcd

    Windows ブート マネージャー
    --------------------------------
    identifier              {bootmgr}
    device                  unknown
    description             Windows Boot Manager
    locale                  ja-JP
    inherit                 {globalsettings}
    default                 {default}
    resumeobject            {26d33988-529b-11df-899d-406186e5638a}
    displayorder            {530a995b-3e72-11e0-a907-0013722cf7bc}
    toolsdisplayorder       {memdiag}
    timeout                 30

    Windows ブート ローダー
    --------------------------------
    identifier              {530a995b-3e72-11e0-a907-0013722cf7bc}
    device                  ramdisk=[boot]\recovery\windowsre\winRE.wim,{ramdiskopti
    ons}
    description             onkyo recovery
    osdevice                ramdisk=[boot]\recovery\windowsre\winRE.wim,{ramdiskopti
    ons}
    systemroot              \Windows
    detecthal               Yes
    winpe                   Yes

  7. 新しいHDDにMBRを復元します。
    $ sudo fdisk -l などで新しいハードディスクのデバイス名を確認して下さいね。
    /dev/sda だった場合は
    $ sudo dd bs=512 count=1 if=mbr.img of=/dev/sda

    パーティション復元されます。
    $ sudo fdisk -l
    ディスク /dev/sda: 500.1 GB, 500107862016 バイト
    ヘッド 255, セクタ 63, シリンダ 60801
    Units = シリンダ数 of 16065 * 512 = 8225280 バイト
    セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    ディスク識別子: 0xcf423475

    デバイス ブート      始点        終点     ブロック   Id  システム
    /dev/sda1               1          39      307200   27  不明
    パーティション 1 は、シリンダ境界で終わっていません。
    /dev/sda2              39        2589    20480000    7  HPFS/NTFS
    /dev/sda3   *        2589       31695   233799680    7  HPFS/NTFS
    /dev/sda4           31696       60801   233793945    7  HPFS/NTFS

  8. sda2をNTFSでフォーマットします。
    ONKYO-RECOVERYフォルダ以下をコピーします。ONKYO,RData

  9. sda3をNTFSでフォーマットします。
    bootmgr ファイルをコピーします。
    boot フォルダをコピーします。
    boot ファルダのBCDファイルを6.で編集したBCDファイルと置換します。

  10. Windows RE 領域はsda1に置いても認識されないので Cドライブに置きます。
    recovery フォルダ以下をコピーします。BCDファイルもそのように 6.で編集してあります。
    c:\recovery\system32
    c:\recovery\windowsre

  11. 再起動します。