“cmd”命令用来更新windows中的所有软件吗?

“cmd”命令用来更新windows中的所有软件吗?

在 Ubuntu 中sudo apt-get update更新所有软件包。

和 Ubuntu 一样,Windows 是否也具有用于 cmd 更新 Windows 中所有已安装软件的命令?

答案1

Windows 系统文件、Microsoft Store 应用以及可选的 Microsoft 产品均可通过Windows更新控制面板应用程序,虽然它不具备 Debian 的功能高级封装工具(apt)更新所有添加的 PPA。您可以打开Windows更新从 CMD 提示符(终端,对于 Linux 用户)中输入 CPL 来查找并自动安装更新:

  • 在 UAC 对话框中按下Windows、键入cmd、按下ShiftCtrlEnter并单击,以使 CMD 以管理员身份运行。Yes
  • 输入start ms-settings:windowsupdate-action以使 CPL 应用程序获取最新更新。

您还可以将该脚本放入批处理(shell脚本)文件中(例如更新程序),但你可能需要以管理员身份运行它

微软曾提供过执行程序在 \System32\ 文件夹中启用从 CMD 手动更新,但显然该应用程序不再起作用。 有可能的调用Windows 更新代理以编程方式但是 MS 在该 VB 示例中提供的代码是120 行长,远远超出了sudo apt-get update。也有例子通过 MS 执行该任务电源外壳,但有些例子需要安装不受信任的模块电源外壳

答案2

apt你可以在 Ubuntu/Linux 或macOS 中使用第三方等效软件安装[某些]软件brew-巧克力味,两者都允许升级通过安装的软件那些包管理器。

  • 巧克力味:

    choco upgrade all -y
    
  • 舀:

    scoop upgrade
    

答案3

有几种方法可以实现这一目标:

两者都可以正常工作,但如果您想纯粹通过命令行进行操作,第一个可能更好;但是,请记住,与 不同apt-get update,只有 MS 软件可以通过这种方式更新 - 没有适用于所有 Windows 软件的集中式包管理器。

答案4

现在是 2022 年!事情已经发生了变化。我们现在有了Windows 软件包管理器(winget),这是第二好的选择。但它仍然不是apt-get不过。操作系统更新仍然仅通过 Windows Update 进行分发。

与所有其他现有解决方案(如 Chocolatey 等)相比,温格特与手动安装的软件配合使用效果很好!因此,如果你以前安装过 Azure CLI,温格特将检测到,你可以使用以下方法更新或删除它温格特

温格特如今已与 Windows 捆绑在一起。这是神秘的“应用安装程序”在管理已安装的软件时您可能见过的程序。

这一切听起来好得令人难以置信?好吧,确实如此。温格特feed 的软件数量有限。因此,您无法更新已安装的所有内容。此外,本地化版本的程序也存在问题,这些程序大多没有区别,可能会更新为不同的语言版本。此外,对于某些程序,无法正确确定当前安装的版本,从而导致无休止的更新周期。

请尝试一下并确保将您看到的任何问题报告给相应的错误跟踪器。


只有当系统从一开始就设计成这样时,才能使用包管理器管理所有系统组件(包括内核等)。但 Windows 并非如此。这就是为什么 Windows 很可能永远不会出现包罗万象的包管理器。

相关内容