После сбора информации по всему Интернету мне удалось придумать пакетный сценарий DOS, который должен работать AFAICT, но после того, как исполняемый файл установки Cygwin завершается (на первый взгляд, успешно), в корневой папке Cygwin нет каталога bin
.
Почему это терпит неудачу? Исправления приветствуются! :)
NB: он пытается выполнить чистую установку в каталог с именем cyg64
в домашнем каталоге текущего пользователя.
setlocal
if exist %HOMEDRIVE%%HOMEPATH%\cyg64 rmdir /s /q %HOMEDRIVE%%HOMEPATH%\cyg64
mkdir %HOMEDRIVE%%HOMEPATH%\cyg64
set CYGSETUP=%HOMEDRIVE%%HOMEPATH%\cyg64\cygsetup64.exe
for /f "tokens=4-7 delims=[.] " %%i in ('ver') do (if %%i==Version (set v=%%j.%%k) else (set v=%%i.%%j))
if %v%==6.1 (
bitsadmin /transfer "CygwinDownload" https://www.cygwin.com/setup-x86_64.exe %CYGSETUP%
) else (
powershell -command "& { iwr https://www.cygwin.com/setup-x86_64.exe -OutFile $env:CYGSETUP } "
)
%CYGSETUP% -D -q -R %HOMEDRIVE%%HOMEPATH%\cyg64 -a x86_64 -l %HOMEDRIVE%%HOMEPATH%\cyg64 -s http://cygwin.mirror.constant.com -P openssh,autossh,nano,vim,git
endlocal