- SS64
- CMD
- How-to
Export a JSON file of apps to a specified file.
Syntax WINGET export [-o] OutputFile [options] Commands: -o,--output Path to the JSON file to be created. Options: -s, --source [Optional] Specifies a source to export files from. Use this option when you only want files from a specific source. --include-versions [Optional] Includes the version of the app currently installed. Use this option if you want a specific version. By default, unless specified, import will use latest. --accept-source-agreements Used to accept the source license agreement, and avoid the prompt. --verbose-logs Used to override the logging setting and create a verbose log.
JSON schema
The driving force behind the export command is the JSON file. You can find the schema for the JSON file here. From the Winget Github.
The JSON file includes the following hierarchy:Entry — Description
Sources — The sources application manifests come from.
Packages — The collection of packages to install.
PackageIdentifier — The Windows Package Manager package identifier used to specify the package.
Version [Optional] — The specific version of the package to install.
Exporting files
When the Windows Package Manager exports the JSON file, it attempts to export all the applications installed on the PC. If the winget export command is not able to match an application to an application from an available source, the export command will show a warning.
Matching an application depends on metadata in the manifest from a configured source, and metadata in Add / Remove Programs in Windows based on the package installer.
Examples
Export into myfiles.json:
C:\> winget.exe export -o \demo\myfiles.json
“I think Americans should have a policy of love. That should be the foreign policy, love. Export Love” ~ Ziggy Marley
Related commands
GitHub repository
WINGET — Discover, install, upgrade, remove and configure applications on Windows computers.
MSIEXEC — Microsoft Windows Installer.
WUAUCLT — Windows Update.
Copyright © 1999-2025 SS64.com
Some rights reserved
Распознавание голоса и речи на C#
UnmanagedCoder 05.05.2025
Интеграция голосового управления в приложения на C# стала намного доступнее благодаря развитию специализированных библиотек и API. При этом многие разработчики до сих пор считают голосовое управление. . .
Реализация своих итераторов в C++
NullReferenced 05.05.2025
Итераторы в C++ — это абстракция, которая связывает весь экосистему Стандартной Библиотеки Шаблонов (STL) в единое целое, позволяя алгоритмам работать с разнородными структурами данных без знания их. . .
Разработка собственного фреймворка для тестирования в C#
UnmanagedCoder 04.05.2025
C# довольно богат готовыми решениями – NUnit, xUnit, MSTest уже давно стали своеобразными динозаврами индустрии. Однако, как и любой динозавр, они не всегда могут протиснуться в узкие коридоры. . .
Распределенная трассировка в Java с помощью OpenTelemetry
Javaican 04.05.2025
Микросервисная архитектура стала краеугольным камнем современной разработки, но вместе с ней пришла и головная боль, знакомая многим — отслеживание прохождения запросов через лабиринт взаимосвязанных. . .
Шаблоны обнаружения сервисов в Kubernetes
Mr. Docker 04.05.2025
Современные Kubernetes-инфраструктуры сталкиваются с серьёзными вызовами. Развертывание в нескольких регионах и облаках одновременно, необходимость обеспечения низкой задержки для глобально. . .
Создаем SPA на C# и Blazor
stackOverflow 04.05.2025
Мир веб-разработки за последние десять лет претерпел коллосальные изменения. Переход от традиционных многостраничных сайтов к одностраничным приложениям (Single Page Applications, SPA) — это. . .
Реализация шаблонов проектирования GoF на C++
NullReferenced 04.05.2025
«Банда четырёх» (Gang of Four или GoF) — Эрих Гамма, Ричард Хелм, Ральф Джонсон и Джон Влиссидес — в 1994 году сформировали канон шаблонов, который выдержал проверку временем. И хотя C++ претерпел. . .
C# и сети: Сокеты, gRPC и SignalR
UnmanagedCoder 04.05.2025
Сетевые технологии не стоят на месте, а вместе с ними эволюционируют и инструменты разработки. В . NET появилось множество решений — от низкоуровневых сокетов, позволяющих управлять каждым байтом. . .
Создание микросервисов с Domain-Driven Design
ArchitectMsa 04.05.2025
Архитектура микросервисов за последние годы превратилась в мощный архитектурный подход, который позволяет разрабатывать гибкие, масштабируемые и устойчивые системы. А если добавить сюда ещё и. . .
Многопоточность в C++: Современные техники C++26
bytestream 04.05.2025
C++ долго жил по принципу «один поток — одна задача» — как старательный солдатик, выполняющий команды одну за другой. В то время, когда процессоры уже обзавелись несколькими ядрами, этот подход стал. . .
Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Sign up
- Windows equivalent of $export
- How to export and import environment variables in windows?
- How to export and import environment variables in windows?
- HowTo: Set an Environment Variable in Windows — Command Line and Registry
- Windows command line alternative for «export»
- 2 ways to List environment variables in command line windows
- Windows: List Environment Variables – CMD & PowerShell
- How to Set Environment Variable in Windows
Windows equivalent of $export
People also askHow to create an environment variable in Windows?How to create
an environment variable in Windows?To Create a User Environment Variable in
Windows 10,
$ export PROJ_HOME=$HOME/proj/111
$ export PROJECT_BASEDIR=PROJ_HOME/exercises/ex1
$ mkdir -p $PROJ_HOME
SET PROJ_HOME=%USERPROFILE%/proj/111
SET PROJECT_BASEDIR=%PROJ_HOME%/exercises/ex1
mkdir "%PROJ_HOME%"
How to export and import environment variables in windows?
Add a comment. 127. I would use the SET command from the command prompt to
export all the variables, rather than just PATH as recommended above. C:\> SET
>> allvariables.txt. To import the variablies, one can use a simple loop: C:\>
for /F %A in (allvariables.txt) do SET %A. Share.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
HKEY_CURRENT_USER\Environment
C:\> SET >> allvariables.txt
C:\> for /F %A in (allvariables.txt) do SET %A
regedit /e "%userprofile%\Desktop\my_user_env_variables.reg" "HKEY_CURRENT_USER\Environment"
set TODAY=%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%
regedit /e "%CD%\user_env_variables[%TODAY%].reg" "HKEY_CURRENT_USER\Environment"
regedit /e "%CD%\global_env_variables[%TODAY%].reg" "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"
global_env_variables[2017-02-14].reg
user_env_variables[2017-02-14].reg
C:\> PATH > path.txt
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
HKEY_CURRENT_USER\Environment
@echo off
:: RegEdit can only export into a single file at a time, so create two temporary files.
regedit /e "%CD%\environment-backup1.reg" "HKEY_CURRENT_USER\Environment"
regedit /e "%CD%\environment-backup2.reg" "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"
:: Concatenate into a single file and remove temporary files.
type "%CD%\environment-backup1.reg" "%CD%\environment-backup2.reg" > environment-backup.reg
del "%CD%\environment-backup1.reg"
del "%CD%\environment-backup2.reg"
gci env:* | sort-object name | Where-Object {$_.Name -like "MyApp*"} | Foreach {"[System.Environment]::SetEnvironmentVariable('$($_.Name)', '$($_.Value)', 'Machine')"}
# export_env.ps1
$Date = Get-Date
$DateStr = '{0:dd-MM-yyyy}' -f $Date
mkdir -Force $PWD\env_exports | Out-Null
regedit /e "$PWD\env_exports\user_env_variables[$DateStr].reg" "HKEY_CURRENT_USER\Environment"
regedit /e "$PWD\env_exports\global_env_variables[$DateStr].reg" "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment">>SystemEnvVariablesSourceMachine.txt
reg query "HKEY_CURRENT_USER\Environment">>UserEnvVariablesSourceMachine.txt
(?:\A\r?\n|^HKEY_CURRENT_USER\\Environment\r?\n?|^HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment\r?\n?|^\r?\n$|\r?\n\Z)
Literally Empty
^\s+(.*?)\s{4}\w+\s{4}(.*?)$
\1=\2
SystemEnvVariablesDestinationMachine.txt
UserEnvVariablesDestinationMachine.txt
SystemEnvVariablesFinalMerge.txt
UserEnvVariablesFinalMerge.txt
(^\w+=|.*?(?:;|$))
\1\n
(.)$\r?\n
\1
Get-Content .\UserEnvVariablesFinalMerge.txt | ForEach-Object {
$envVarDataSplit = $($_).split("=")
if($($envVarDataSplit).count -gt 0)
{
Write-Output "Key: $($envVarDataSplit[0]) ~ Value: $($envVarDataSplit[1])"
SETX $envVarDataSplit[0] "$($envVarDataSplit[1])"
}
}
Get-Content .\SystemEnvVariablesFinalMerge.txt | ForEach-Object {
$envVarDataSplit = $($_).split("=")
if($($envVarDataSplit).count -gt 0)
{
Write-Output "Key: $($envVarDataSplit[0]) ~ Value: $($envVarDataSplit[1])"
SETX $envVarDataSplit[0] "$($envVarDataSplit[1])" /M
}
}
How to export and import environment variables in windows?
The first set are system/global environment variables; the second set are
user-level variables. Edit as needed and then import the .reg files on the new
machine. I would use the SET command from the command prompt to export all the
variables, rather than just PATH as recommended above. C:\> SET >>
allvariables.txt
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
HKEY_CURRENT_USER\Environment
C:\> SET >> allvariables.txt
C:\> for /F %A in (allvariables.txt) do SET %A
regedit /e "%userprofile%\Desktop\my_user_env_variables.reg" "HKEY_CURRENT_USER\Environment"
HowTo: Set an Environment Variable in Windows — Command Line and Registry
To set persistent environment variables at the command line, we will use
setx.exe. It became part of Windows as of Vista/Windows Server 2008. Prior to
that, it was part of the Windows Resource Kit. If you need the Windows
Resource Kit, see Resources at the bottom of the page. setx.exe does not set
the environment variable in the current command
1
set
1
2
3
4
5
6
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\user\AppData\Roaming
.
.
.
windir=C:\Windows
1
echo %ProgramFiles%
1
C:\Program Files
1
Get-ChildItem Env:
1
2
3
4
5
6
7
8
Name Value
---- -----
ALLUSERSPROFILE C:\ProgramData
APPDATA C:\Users\user\AppData\Roaming
.
.
.
windir C:\Windows
1
echo $Env:ProgramFiles
1
C:\Program Files
1
setx EC2_CERT "%USERPROFILE%\aws\cert.pem"
1
echo %EC2_CERT%
1
C:\Users\user\aws\cert.pem
1
setx EC2_HOME "%APPDATA%\aws\ec2-api-tools" /M
1
reg query HKEY_CURRENT_USER\Environment
1
2
3
HKEY_CURRENT_USER\Environment
TEMP REG_EXPAND_SZ %USERPROFILE%\AppData\Local\Temp
TMP REG_EXPAND_SZ %USERPROFILE%\AppData\Local\Temp
1
reg query HKEY_CURRENT_USER\Environment /v TEMP
1
2
HKEY_CURRENT_USER\Environment
TEMP REG_EXPAND_SZ %USERPROFILE%\AppData\Local\Temp
1
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
ComSpec REG_EXPAND_SZ %SystemRoot%\system32\cmd.exe
FP_NO_HOST_CHECK REG_SZ NO
NUMBER_OF_PROCESSORS REG_SZ 8
OS REG_SZ Windows_NT
Path REG_EXPAND_SZ C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\
PATHEXT REG_SZ .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PROCESSOR_ARCHITECTURE REG_SZ AMD64
PROCESSOR_IDENTIFIER REG_SZ Intel64 Family 6 Model 60 Stepping 3, GenuineIntel
PROCESSOR_LEVEL REG_SZ 6
PROCESSOR_REVISION REG_SZ 3c03
PSModulePath REG_EXPAND_SZ %SystemRoot%\system32\WindowsPowerShell\v1.0\Modules\;C:\Program Files\Intel\
TEMP REG_EXPAND_SZ %SystemRoot%\TEMP
TMP REG_EXPAND_SZ %SystemRoot%\TEMP
USERNAME REG_SZ SYSTEM
windir REG_EXPAND_SZ %SystemRoot%
1
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PATH
1
2
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
PATH REG_EXPAND_SZ C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\
1
reg delete HKEY_CURRENT_USER\Environment /v USER_EXAMPLE /f
1
The operation completed successfully.
1
reg delete "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v SYSTEM_EXAMPLE /f
1
ERROR: Access is denied.
1
The operation completed successfully.
1
setx throwaway trash
1
SUCCESS: Specified value was saved.
Windows command line alternative for «export»
Windows command line alternative for «export» Ask Question Asked 4 years, 4
months ago. Modified 2 years ago. Viewed 20k times 9 1. I’ve bought a book
about Machine Learning, and it needs an environment setup. windows command-
line environment-variables. Share. Improve this question. Follow edited Mar
30, 2018 at 14:02.
$ export ML_PATH="$HOME/ml"
$ mkdir -p $ML_PATH
SET ML_PATH="$HOME/ml"
SET mkdir $ML_PATH`
2 ways to List environment variables in command line windows
set command to get environment variable list. set command in windows used to
set the environment variables for command line scope. Syntax. set
VARIABLE=path/value. Here’s an example of setting JAVA HOME to the JDK route.
set JAVA_HOME=c:\JDK1.9. `SET command also lists all environment variables.
Here simple set command print all environment
set VARIABLE=path/value
set JAVA_HOME=c:\JDK1.9
C:\>set
ALLUSERSPROFILE=C:\ProgramData
ANDROID_HOME=A:\android\sdk
ANT_HOME=A:\Java\apache-ant-1.10.0
APPDATA=C:\Users\Kiran\AppData\Roaming
ChocolateyInstall=C:\ProgramData\chocolatey
ChocolateyLastPathUpdate=132329753418192180
ChocolateyToolsLocation=C:\tools
CommonProgramFiles=C:\Program Files\Common Files
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
CommonProgramW6432=C:\Program Files\Common Files
COMPUTERNAME=KIRAN
ComSpec=C:\WINDOWS\system32\cmd.exe
DERBY_HOME=C:\db-derby-10.14.2.0-bin
DriverData=C:\Windows\System32\Drivers\DriverData
GOOGLE_API_KEY=no
set | more
C:\>set > output.txt
C:\>set derby
DERBY_HOME=C:\db-derby-10.14.2.0-bin
Get-ChildItem Env:
Windows: List Environment Variables – CMD & PowerShell
An environment variable is a dynamic “object” containing an editable value
which may be used by one or more software programs in Windows. In this note i
am showing how to list environment variables and display their values from the
Windows command-line prompt and from the PowerShell. Cool Tip: Add a directory
to Windows %PATH% environment
C:\> set
C:\> echo %ENVIRONMENT_VARIABLE%
PS C:\> gci env:* | sort-object name
PS C:\> echo $env:ENVIRONMENT_VARIABLE
How to Set Environment Variable in Windows
Set Environment Variable in Windows via GUI. Follow the steps to set
environment variables using the Windows GUI: 1. Press Windows + R to open the
Windows Run prompt. 2. Type in sysdm.cpl and click OK. 3. Open the Advanced
tab and click on the Environment Variables button in the System Properties
window. 4.
set
Get-ChildItem Env:
echo %[variable_name]%
echo $Env:[variable_name]
setx [variable_name] "[variable_value]"
setx Test_variable "Variable value"
setx [variable_name] "[variable_value]" /M
reg query HKEY_CURRENT_USEREnvironment
reg query "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment"
reg query HKEY_CURRENT_USEREnvironment /v [variable_name]
reg query "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment" /v [variable_name]
reg delete HKEY_CURRENT_USEREnvironment /v [variable_name] /f
reg delete "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment" /v [variable_name] /f
setx [variable_name] trash