Microsoft VS Code绿色版及备份制作

为了避免系统重装及vscode重装配置丢失,研究了一个手工绿色版的办法:

1.从官方下载.zip(记得非安装版),然后解压到非系统盘中(例如:d:\vscode),运行并配置好各方面;

2.把C:\Users\用户名\.vscode\文件夹中的extensions文件夹直接复制到序号1中vscode文件夹(例如:d:\vscode)中;

3.创建code.exe快捷方式,右键快捷方式,在目标中的code.exe后加【 --extensions-dir "d:\vscode\extensions"】(注【】中有空格),此方案是解决扩展插件的位置,免得重装时要重复装一堆东西。

4.在序号1的文件夹中(例如:d:\vscode)创建一个文件夹名为:VSCode备份器,从http://t.csdn.cn/YfzQ2http://t.csdn.cn/YfzQ2

下载”备份器“引用该朋友的内容,结合我自己的情况,改良了”请运行我.bat“,内容如下:

@echo off
@chcp 936
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
setlocal enabledelayedexpansion
set si=%date:~0,10%
set FILE_de_NAME=%si:/=-%

rem 配置压缩文件路径,z_type为备份/还原引擎,为rar时调用本机的rar默认安装路径,为zip时用原作者的zip。
set zippath=%~dp0zip.exe
set unzippath=%~dp0unzip.exe
set rarpath=%ProgramFiles%\winrar\rar.exe
set z_type="rar"

rem 源代码.vscode文件夹中的所有配置备份
set codevscode=D:\CODE\VSCode
title "Visual Studio Code备份工具"

if z_type=="zip" if not exist zip.exe (
    echo 未找到 zip.exe,无法备份
    goto END
)
if z_type=="zip" if not exist unzip.exe (
    echo 未找到 unzip.exe,无法恢复
    goto END
)
if z_type=="rar" if not exist "%rarpath%" (
    echo 未找到 rar.exe,无法备份/恢复
    goto END
)

echo 本次备份/还原用的压缩/解压软件引擎为:%z_type%
echo 敬告:请确保您已安装Visual Studio Code并至少运行过一次
set /p selc=请选择操作类型(备份请输入b,还原请输入r,退出请输入其他字符):
if /I "%selc%"=="b" goto b
if /I "%selc%"=="r" goto r
echo 感谢您的使用,再见!
goto END

:b
    set /p solo=请选择备份类型(拓展请输入e,用户设置请输入u,代码.vscode请输入c,退出请输入x,三者都备份请输入其他字符):
    echo 备份会生成zip文件于当前目录,占用大约几十到几百MiB,请确保您的空间足够。
    pause
    if /I "%solo%"=="e" goto e
    if /I "%solo%"=="u" goto u
    if /I "%solo%"=="c" goto code
    if /I "%solo%"=="x" goto END

:e
    echo 正在备份拓展...
    cd /d "%userprofile%\.vscode"
    if %z_type%=="zip" ("%zippath%" -r9 "%~dp0vscode_%FILE_de_NAME%_ext.zip" *
    )else if %z_type%=="rar" ("%rarpath%" a -r -m4 "%~dp0vscode_%FILE_de_NAME%_ext.zip" *
    )
    if exist "%~dp0vscode_%FILE_de_NAME%_ext.zip" (echo 成功备份拓展到vscode_%FILE_de_NAME%_ext.zip) else (echo Error:备份用户设置失败。)
    if /I "%solo%"=="e" goto ed

:u
    echo 正在备份用户设置...
    cd /d "%appdata%\Code\User"
    if %z_type%=="zip" ("%zippath%" -r9 "%~dp0vscode_%FILE_de_NAME%_settings.zip" *
    )else if %z_type%=="rar" ("%rarpath%" a -r -m4 "%~dp0vscode_%FILE_de_NAME%_settings.zip" *
    )
    if exist "%~dp0vscode_%FILE_de_NAME%_settings.zip" (echo 成功备份代码.vscode到vscode_%FILE_de_NAME%_settings.zip) else (echo Error:备份用户设置失败。)
    if /I "%solo%"=="u" goto ed

:code
    echo 正在备份代码.vscode设置...
    cd /d "%codevscode%"
    if %z_type%=="zip" ("%zippath%" -r9 "%~dp0vscode_%FILE_de_NAME%_code_vscode.zip" *.json
    )else if %z_type%=="rar" ("%rarpath%" a -r -m4 "%~dp0vscode_%FILE_de_NAME%_code_vscode.zip" *.json
    )
    if exist "%~dp0vscode_%FILE_de_NAME%_code_vscode.zip" (echo 成功备份代码.vscode到vscode_%FILE_de_NAME%_code_vscode.zip) else (echo Error:备份代码.vscode失败。)
    if /I "%solo%"=="c" goto ed

:ed
    echo.
    echo 备份操作已完成,请查看是否有错误,如无,请妥善保存zip文件。
    goto END

:r
    echo 请将以_ext、_settings、_code_vscode结尾的zip文件放入本脚本的同级目录下。
    echo 如果不想还原拓展设置,请不要对前者执行上述操作!
    echo 如果不想还原用户设置,请不要对后者执行上述操作!
    echo 如果不想还原代码.vscode设置,请不要对后者执行上述操作!
    echo 以上操作完成后,请按任意键继续,按Ctrl+C中断放弃。
    pause >nul
    if exist %~dp0*_ext.zip (
        echo 正在还原拓展...
        cd /d "%userprofile%"
        if %z_type%=="zip" ("%unzippath%" -o "%~dp0*_ext.zip" -d .vscode
        )else if %z_type%=="rar" ("%rarpath%" x "%~dp0*_ext.zip" .vscode
        )
        if ERRORLEVEL 0 echo 成功还原拓展...
    )
    if exist %~dp0*_settings.zip (
        echo 正在还原用户设置...
        cd /d "%appdata%\Code"
        if %z_type%=="zip" ("%unzippath%" -o "%~dp0*_settings.zip" -d User
        )else if %z_type%=="rar" ("%rarpath%" x "%~dp0*_settings.zip" User
        )
        if ERRORLEVEL 0 echo 成功还原用户设置...
    )
    if exist %~dp0*_code_vscode.zip (
        echo 正在还原代码.vscode设置...
        cd /d "%codevscode%"
        if %z_type%=="zip" ("%unzippath%" -o "%~dp0*_code_vscode.zip" -d .\
        )else if %z_type%=="rar" ("%rarpath%" x "%~dp0*_code_vscode.zip" .\
        )
        if ERRORLEVEL 0 echo 成功还原代码.vscode设置...
    )
    echo.
    echo 还原操作已完成,请查看是否有错误。
    goto END

:END
    cd /d "%rundir%"
    echo.
    echo 按任意键退出...
    pause>nul
    exit

主要改良的是,备份器放在任意文件夹中时,还可以备份到vscode(第一次运行vscode并配置好了后才运行该bat),以后重装系统(软件时),再运行一次bat选择还原即可,后面发现原作者备份器中的zip.exe不大适合我,我做了保留,并增加了rar,具体路径请自行修改,如果要用原作者的zip,把set z_type="rar"改为set z_type="zip"即可。

5.以后如果有改动vscode配置,只需再备份一次即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值