Visual studio code自動アップデートスクリプト(Windows版)

Visual studio code(Windows版)はインストーラーでインストールする方法が一般的です。

ただ、別PCに自分仕様にカスタマイズしたのVisual studio codeを使用したい場合を考えたとき、zipファイルを展開してインストールしたほう方が、SSDにコピーしてそこから実行もできるようになり、バックアップも容易などいいことずくめです。

しかし、zip展開でインストールした場合、アップデートの度にzipをダウンロードして展開し、Visual studio codeのインストールフォルダに手動でコピーしなくてはいけません。Visual studio codeは頻繁にアップデートがあるので、手動アップデートは結構面倒です。

そこで、ダブルクリックのみでアップデートバッチとPowershellスクリプトを作成し、スケジューラーで定期的にアップデートできるようにしました。そのバッチとPowershellスクリプトが以下になります。

バッチファイルはダブルクリックでアップデートできるようにするためのWrapperになります。Visual studio codeが起動中の場合やアップデートファイルのダウンロードに失敗した場合はアップデート処理を行わないようにしています。

このバッチを定時で起動したり、startupにショートカットを置いて起動時にアップデートをかけたりすることで、常に最新版のVisual studio codeが使用できるようになります。

参考になれば幸いです。

@echo off

SET CURRENT_DIR_VSCODE_UPDATE_BAT=%~dp0
cd /d "%CURRENT_DIR_VSCODE_UPDATE_BAT%"
SET BATCH_NAME_VSCODE_UPDATE_BAT=%~n0%~x0

echo [%BATCH_NAME_VSCODE_UPDATE_BAT%] powershell -NoProfile -ExecutionPolicy Bypass ".\VsCodeUpdate.ps1"
CALL powershell -NoProfile -ExecutionPolicy Bypass ".\VsCodeUpdate.ps1"
[string]$script:script_path = Split-Path -Parent $MyInvocation.MyCommand.Path
[string]$script:script_name = Split-Path -Leaf $PSCommandPath
[string]$script:zip_name_body = "updater"
[string]$script:zip_name = $script:zip_name_body +".zip"
[string]$script:zip_path = $script:script_path + "\" + $script:zip_name

try {
    Get-Process -Name Code -ErrorAction Stop > $null
    Write-Host "[$script:script_name] Error : Close VSCode before updating"
    Start-Sleep -m 5000
    exit
}
catch {
    # do nothing
}

# Remove temp file from portable user data
Remove-Item -Recurse -Force -Path "data/user-data" -Include @("Backups", "Cache", "CachedData", "GPUCache", "logs")

# Download latest stable build
curl.exe -L "https://code.visualstudio.com/sha/download?build=stable&os=win32-x64-archive" -o $script:zip_path

if( Test-Path($script:zip_path) ){

    try{
        # Unzip it
        [string]$extract_folder = $script:zip_path.Substring(0, $script:zip_path.LastIndexOf('.'))
        if( Test-Path($extract_folder) ){
            Remove-Item -Recurse -Force -Path $extract_folder
        }
        Expand-Archive -Path $script:zip_path -DestinationPath $extract_folder

        try {
            Get-Process -Name Code -ErrorAction Stop > $null

            Write-Host "[$script:script_name] Error : Close VSCode before updating"

            # Delete downloaded package
            Remove-Item -Path $script:zip_path
            if( Test-Path($extract_folder) ){
                Remove-Item -Recurse -Force -Path $extract_folder
            }

            Start-Sleep -m 5000

            exit
        }
        catch {
            # do nothing
        }

        # Delete anything except user data, update script and downloaded zip file
        Get-ChildItem -Exclude @("data", "VSCodeUpdate.*", "ContextMenu_Setting.reg", $script:zip_name, $script:zip_name_body ) | Remove-Item -Recurse -Force
        Copy-Item -Path ( $extract_folder + "\*" ) -Destination $script:script_path -Recurse -Force
    } catch {
        Write-Host "[$script:script_name] Forbidden route : Fail to extract"
        Start-Sleep -m 5000
    }

    # Delete downloaded package
    Remove-Item -Path $script:zip_path
    if( Test-Path($extract_folder) ){
        Remove-Item -Recurse -Force -Path $extract_folder
    }
}

※zipでインストールする場合、右クリックメニューに”VSCodeで開く”が表示されません。これを表示させるための.regファイルが以下になります。”D:¥Tools¥VSCode”にインストールされていることが前提になります。参考までに。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\VSCode]
@=hex(2):4f,00,70,00,65,00,6e,00,20,00,77,00,26,00,69,00,74,00,68,00,20,00,43,\
  00,6f,00,64,00,65,00,00,00
"Icon"=hex(2):44,00,3a,00,5c,00,54,00,6f,00,6f,00,6c,00,73,00,5c,00,56,00,53,\
  00,43,00,6f,00,64,00,65,00,5c,00,43,00,6f,00,64,00,65,00,2e,00,65,00,78,00,\
  65,00,00,00

[HKEY_CLASSES_ROOT\*\shell\VSCode\command]
@=hex(2):22,00,44,00,3a,00,5c,00,54,00,6f,00,6f,00,6c,00,73,00,5c,00,56,00,53,\
  00,43,00,6f,00,64,00,65,00,5c,00,43,00,6f,00,64,00,65,00,2e,00,65,00,78,00,\
  65,00,22,00,20,00,22,00,25,00,31,00,22,00,00,00

[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode]
@=hex(2):4f,00,70,00,65,00,6e,00,20,00,77,00,26,00,69,00,74,00,68,00,20,00,43,\
  00,6f,00,64,00,65,00,00,00
"Icon"=hex(2):44,00,3a,00,5c,00,54,00,6f,00,6f,00,6c,00,73,00,5c,00,56,00,53,\
  00,43,00,6f,00,64,00,65,00,5c,00,43,00,6f,00,64,00,65,00,2e,00,65,00,78,00,\
  65,00,00,00

[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode\command]
@=hex(2):22,00,44,00,3a,00,5c,00,54,00,6f,00,6f,00,6c,00,73,00,5c,00,56,00,53,\
  00,43,00,6f,00,64,00,65,00,5c,00,43,00,6f,00,64,00,65,00,2e,00,65,00,78,00,\
  65,00,22,00,20,00,22,00,25,00,56,00,22,00,00,00

[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode]
@=hex(2):4f,00,70,00,65,00,6e,00,20,00,77,00,26,00,69,00,74,00,68,00,20,00,43,\
  00,6f,00,64,00,65,00,00,00
"Icon"=hex(2):44,00,3a,00,5c,00,54,00,6f,00,6f,00,6c,00,73,00,5c,00,56,00,53,\
  00,43,00,6f,00,64,00,65,00,5c,00,43,00,6f,00,64,00,65,00,2e,00,65,00,78,00,\
  65,00,00,00

[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode\command]
@=hex(2):22,00,44,00,3a,00,5c,00,54,00,6f,00,6f,00,6c,00,73,00,5c,00,56,00,53,\
  00,43,00,6f,00,64,00,65,00,5c,00,43,00,6f,00,64,00,65,00,2e,00,65,00,78,00,\
  65,00,22,00,20,00,22,00,25,00,56,00,22,00,00,00

チーズINハンバーグ

調理道具

  • ボウル大(ハンバーグのタネをこねる)
  • 小皿(溶かしチーズを作る)
  • バット(溶かしチーズを入れて固める)
  • フライパン大(ハンバーグを焼く)

材料(4人分)

【ハンバーグのタネ】

  • 挽肉    合挽肉500g
  • 卵     1個
  • パン粉   40g(200cc程度)
  • 【次回確認】粉ゼラチン 5g
  • 牛乳    大さじ2
  • 塩     3つまみ
  • 黒胡椒   12捻り
  • ナツメグ  小さじ1/2

【チーズINハンバーグのチーズ】

  • チーズ   80g ※チェダーとピザチーズを混ぜる場合は3:1程度
  • 牛乳    大さじ4
  • 小麦粉   小さじ2

【ソース】

  • 玉ねぎ(みじん切り) 1個
  • バター       20g
  • ケチャップ     大さじ1
  • ウスターソース   大さじ1/2
  • 赤ワイン       200cc
  • はちみつ      小さじ1/2
  • 小麦粉(ソース用)  大さじ1/2
  • 醤油        小さじ1/2
  • 調整水       適量

下準備

チーズINハンバーグのタネを作る

溶かしチーズを作る

  1. ボウル小に牛乳大さじ4、小麦粉小さじ2を入れる
  2. チーズを適当な大きさにカットして、ボウル小に入れる
  3. ボウル小を電子レンジにかけて、チーズを溶かす
  4. ラップにチーズを流して15cm四方に整形し、冷やし固める

ハンバーグのタネを作る

  1. ボウル大に合挽き肉を入れ、卵1個、パン粉40g(200cc)、牛乳大さじ2、卵1個、ナツメグ小さじ1/2、塩3つまみ、黒胡椒12捻りを振り、よく粘りが出るまでこねる【次回確認】ゼラチン5gも混ぜる
  2. ラップをして冷蔵庫に入れて冷やす

チーズINハンバーグに整形する

  1. ラップの上にハンバーグを広げる
  2. ハンバーグのタネにチーズをのせて、チーズを巻き込むように整形し、ラップに包む
  3. 冷蔵庫に入れて形を落ち着かせる

ソースの具材を用意する

  • 玉ねぎをみじん切りにする

調理

【ハンバーグを焼く】

  1. フライパン大を中火にかけて温める
  2. 片面2分程度で両面に焦げ目をつける
  3. 水100cc入れて蒸し、水蒸気がでなくなったら再度水100ccを入れて水蒸気がでなくなるまで蒸す
  4. 串を刺し、中まで火が通ったらアルミホイルをかけて保温する
    ※ここでフライパン大は拭わず、油のみを捨てること

【ソースを作る】

  1. フライパン大にバター15gと玉ねぎを入れ、塩をひとつまみ入れて、飴色になるまで炒める
  2. フライパン大に小麦粉大さじ1/2を入れて練り混ぜて、フライパンの端に寄せておく
  3. フライパン大にケチャップ大さじ1とウスターソース大さじ1/2を入れてまぜ、酸味を飛ばす
  4. フライパン大にワイン200ccとはちみつ小さじ1/2を入れて水分がなくなるまで煮詰める
  5. フライパン大を極弱火にかけ、に醤油小さじ1/2と水20ccを入れ温める
  6. フライパン大にバター5gと黒胡椒を20捻りかけて混ぜる。
  7. フライパン大に調整水100ccを入れて混ぜ、固化しないようにする。ここで味をみること。

【ハンバーグを焼く】

  1. フライパン大にハンバーグを戻し、蓋をして極弱火で1分温め、中のチーズを温める
  2. ソースを回しがけしながらさらに1分温める
  3. 盛り付けてできあがり

メモ

  • ソースを作る際の最後の工程は極弱火にしないと、すぐに水分が飛んでとろみがなくなります
  • 【次回確認】チーズは中に入れず、後から上から被せるほうがハンバーグの火の通りがよくなるか確認

参考レシピ

フライパンで炊く基本のピラフ

調理道具

  • 深底フライパン(具材を炒める・ご飯を炊く)
  • フライパン小(シーフードミックスを炒める)
  • ボウル大(みじん切りにした具材を入れておく)
  • ボウル小(計量済みの米を入れておく)
  • ボウル中(コンソメを溶かした水を入れておく)
  • 中皿(みじん切りにしたピーマンを入れておく)

材料(2人分)

【ご飯】

  • 米       1.5合
  • 水       330cc
  • チキンコンソメ 1個(5g)
  • バター     50g【次回確認:40gに減らしてみる】
  • ローリエ    1枚

【具材】

  • 冷凍シーフードミックス 約100g
  • 玉ねぎ         1/2個
  • にんじん        1/4本
  • ピーマン        2個
  • マッシュルーム     3個
  • ベーコン        60g
  • ニンニク        2カケ【次回確認】
  • 白ワイン        20ml

下準備

【冷凍シーフードミックス】

  1. 冷凍シーフードミックスを自然解凍させておく ※時間がない場合はボウルに水を入れて解凍する
  2. 解凍したらキッチンペーパーで水分を取る
  3. 塩を振って下味をつける

【具材】

  • 玉ねぎをみじん切りにして、ボウル大に入れておく
  • にんじんをみじん切りにして、ボウル大に入れておく
  • ベーコンをみじん切りにして、ボウル大に入れておく
  • マッシュルームをみじん切りにして、ボウル大に入れておく
  • ピーマンをみじん切りにして、中皿に入れておく
  • ニンニクをみじん切りにして、フライパンに入れる【次回確認】

【ご飯】

  • 米1.5合を計量してボウル小に入れておく ※米は洗わないこと。洗う場合はコンソメを溶かす水の量を300ccに減らす
  • ボウル中に水330gをいれ、砕いたチキンコンソメを溶かしておく

調理

【野菜を炒める】

  1. 深底フライパンにバター50gを入れて、弱火にかけて溶かす【次回確認】この過程でニンニクを炒める
  2. 深底フライパンに玉ねぎ、にんじん、マッシュルーム、ベーコンを入れてしんなりするまで炒める【次回確認】玉ねぎ、にんじん、マッシュルームを順番に入れて炒める
  3. 深底フライパンに米を入れて、2−3分炒めて米が透き通るまで炒める
  4. 深底フライパンにチキンコンソメを混ぜた水330ccを入れて中火にかけて沸騰させて混ぜるを繰り返し、全体に熱を通す
  5. 深底フライパンにローリエを入れて蓋をして、極弱火にかけて15分おいておく

【シーフードミックスを炒める】

  1. フライパン小を温め、オイルを引いて煙が出るまで温める
  2. フライパン小を中火にしてシーフードミックスを入れて広げ、少し混ぜて熱を入れる
  3. しばらく放置して、片面に焼き色がついたら混ぜて全体を合わせる
  4. 白ワイン20mlを入れて臭みをとる

【混ぜ合わせる】

  1. 深底フライパンを極弱火にをかけて15分経過したら火を止めてローリエを取り出す
  2. 深底フライパンにシーフード、ピーマンを入れる
  3. 深底フライパンを中火に20秒かけて、ご飯の温度を上げてぱらっとした仕上がりになるようにする
  4. 蓋をして15分蒸らす
  5. 塩・コショウで味を調節して盛り付ける

メモ

  • 野菜などを刻むのにかなりの時間がかかるので、フードプロセッサーを使って時短した方がよさそうです。
  • シーフードミックスの炒め方は「シェフが冷凍シーフードを使って超簡単まかないピラフを作った...」の動画を参考にしています
  • 上記分量ではやや多めなので、材料を8割程度にすると量的にちょうど良さそうです。

参考レシピ

ビックマック

調理道具

  • ボウル小(ソースを作る)
  • フライパン小(合い挽き肉を焼く)

材料(1人分)

【バーガー本体】

  • バンズ     1組 ※なければ6枚切りの食パン2枚
  • 合挽き肉    120g
  • チェダーチーズ 1枚
  • ピクルス    1/3〜1/2本
  • レタス     適量
  • 黒コショウ   適量

【ソース】

  • 玉葱        10g
  • マヨネーズ     18g
  • ケチャップ     6g
  • マスタード     1g
  • 砂糖        2つまみ
  • 塩         1つまみ
  • ガーリックパウダー 2振り ※なければ同量のニンニクをみじん切りにしてすりつぶす
  • 鶏がらスープの素  小さじ1 ※味の素9振りの代わり

下準備

【ソース】

  • 玉ねぎをみじん切りにする
  • ニンニクをみじん切りにしてすりつぶす
  • 鶏がらスープの素をすりつぶす
  • ソースの材料をボウル小に入れてマヨネーズの塊が無くなるまで混ぜる

【バーガー本体】

  • レタスの水気を切って適度な大きさに割いておく
  • バンズの大きさを覆えるようにピクルスをスライスしておく
  • 合い挽き肉120gをバンズの大きさより大きめの円形に整え、両面に塩胡椒を振っておく
  • チェダーチーズのラップを剥いでおく
  • バンズをトースターに入れて焼く準備をしておく

調理

  1. フライパン小を温め、合い挽き肉を中火で焼く。
  2. 焼いた合い挽き肉の上にチェダーチーズを乗せてフライパンに蓋をして火を止め、予熱で溶かす
  3. チェダーチーズを溶かす間にトースターの電源を入れてバンズを焼く
  4. 焼いたバンズにオーロラソースを塗る
  5. バンズの上に、合い挽き肉、ピクルスを乗せて、塩胡椒を少し振って出来上がり

メモ

  • チェダーチーズを溶かしすぎるとフライパンに流れてしまうので、チェダーチーズを乗せる前にバンズやレタスなどを準備しておいた方がいいです

参考レシピ

月見バーガー

調理道具

  • 小皿(オーロラソースを作る)
  • バット(焼いたベーコン・目玉焼きを置いておく)
  • フライパン小(ベーコン・目玉焼き・合い挽き肉を焼く)

材料(1人分)

【バーガー本体】

  • バンズ     1組 ※なければ6枚切りの食パン2枚
  • チェダーチーズ 1枚
  • ベーコン    2枚
  • 合い挽き肉   100g
  • 卵       1個
  • 塩コショウ   適量
  • 油       少量
  • 水       適量
  • 黒コショウ   適量
  • レタス     1枚 ※必要に応じて追加する

【オーロラソース】

  • マヨネーズ    16g
  • ケチャップ    8g
  • 砂糖       2つまみ
  • 塩        1つまみ
  • 鶏がらスープの素 小さじ1/2

下準備

  • 鶏がらスープの素をすりつぶして粉にする
  • オーロラソースの材料を小皿で混ぜる
  • 合い挽き肉100gをバンズの大きさの円形に整え、両面に塩胡椒を振っておく
  • チェダーチーズのラップを剥いでおく
  • バンズをトースターに入れて焼く準備をしておく

調理

  1. フライパン小を温め、ベーコンを中火で焼いて、バットに置いておく
  2. フライパン小で卵を半熟で中火で焼いて、バットに置いておく
  3. フライパン小で合い挽き肉を中火で焼く
  4. 焼いた合い挽き肉の上にチェダーチーズを乗せてフライパンに蓋をして火を止め、予熱で溶かす
  5. チェダーチーズを溶かす間にトースターの電源を入れてバンズを焼く
  6. 焼いたバンズにオーロラソースを塗る
  7. バンズの上に、合い挽き肉、ベーコン、目玉焼きの順に乗せて、塩胡椒を少し振って出来上がり

メモ

  • レタスやトマトを挟むとヘルシーです

参考レシピ