![为什么这个无人值守安装 Cygwin 的 DOS 批处理文件会失败?](https://linux22.com/image/1481811/%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%99%E4%B8%AA%E6%97%A0%E4%BA%BA%E5%80%BC%E5%AE%88%E5%AE%89%E8%A3%85%20Cygwin%20%E7%9A%84%20DOS%20%E6%89%B9%E5%A4%84%E7%90%86%E6%96%87%E4%BB%B6%E4%BC%9A%E5%A4%B1%E8%B4%A5%EF%BC%9F.png)
在收集了来自互联网的所有信息后,我设法编写了一个 DOS 批处理脚本,应该据我所知可以正常工作,但在 Cygwin 安装可执行文件完成(似乎成功)后,bin
Cygwin 根文件夹中没有目录。
为什么会失败?欢迎修复!:)
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
答案1
删除“-D”,因为它只是下载而不是安装