Chocolatey官網
Chocolatey是一款Windows平臺的包管理工具,類似于centos的yum或ubuntu的apt,通過Chocolatey,可以實作軟體,尤其是各式開源軟體的一鍵安裝與一鍵升級,
Chocolatey的檔案寫的非常好,這點即使在眾多新興軟體中也不多見,強烈建議直接看官方檔案:https://chocolatey.org/docs
安裝Chocolatey
官網教程為https://chocolatey.org/install,在有管理員權限的powershell下執行以下安裝腳本即可:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
查找包
可用 search/find/list 指令查找包,支持模糊查詢,如果想看有哪些包,可以直接去官網看:https://chocolatey.org/packages
注意,現在的官網檔案不再列出find指令,之后可能會被廢棄,具體指令為:
choco search <filter> [<options/switches>] choco list <filter> [<options/switches>] clist <filter> [<options/switches>]
- 列出本地的包
clist -l,-l為--lo,--localonly,--lolcal-only的簡寫 - 列出本地的包與電腦安裝過的軟體
choco list -li或choco list -l -i-i需要配合-l使用,用于列出不歸Chocolatey管理的程式
clist -l
clist potplayer
outdated 列出可升級的包
在大于0.9.9.6的版本中,可通過指令choco outdated列出待升級的包
upgrade 升級
update 指令已/即將被棄用,現在升級只用upgrade
choco upgrade all -y
choco upgrade 指令可簡寫為 cup,如cup all -y
pin 固定
用于固定軟體,使得在執行升級全部包時自動跳過;通過維護一張固定串列實作該效果
用法:
- 添加至固定串列:
choco pin add -n=git,其中-n是-name的簡寫 - 從固定串列移除:
choco pin remove -n=git - 列出固定串列:
choco pin list
install 安裝
- 檔案:https://chocolatey.org/docs/commands-install
choco install 可簡寫為 cinst,語法為:
choco install <pkg|packages.config> [<pkg2> <pkgN>] [<options/switches>]
cinst <pkg|packages.config> [<pkg2> <pkgN>] [<options/switches>]
- 添加引數以跳過包校驗:
--ignore-checksums - 可一次性下載多個包,如:
choco install a b c ... -y
如用代理安裝vscode并自動確認:
choco install vscode -y --proxy=127.0.0.1:10809
uninstall 卸載
choco uninstall,可簡寫為 choco cuinst
功能擴展
Chocolatey 定時自動升級所有軟體
choco install choco-upgrade-all-at
有一個非官方的包(choco-upgrade-all-at)提供了該功能,介紹地址:https://chocolatey.org/packages/choco-upgrade-all-at,
該包添加了兩個計劃任務,一個定時執行choco upgrade all -y來升級所有包,一個定時結束升級指令,如果不需要升級,請用pin指令固定版本,
- 若不設定任何引數,默認每天的2點開始升級,4點結束升級
- choco install choco-upgrade-all-at --params "'/TIME:23:00'" 設定每天晚上11點開始升級,凌晨4點結束升級
- choco install choco-upgrade-all-at --params "'/DAILY:yes /TIME:04:00 /ABORTTIME:08:00'" 設定凌晨4點到8點升級
- choco install choco-upgrade-all-at --params "'/WEEKLY:yes /DAY:SUN /TIME:01:00'" 設定每周周1的1點到4點升級

Chocolatey 開機自動升級所有包
上一節的簡化版(同一個人在維護),同樣是通過定時任務實作,效果是開機后自動升級所有包,https://chocolatey.org/packages/choco-upgrade-all-at-startup
指令:choco install choco-upgrade-all-at-startup
feature 配置
- 查看配置項:
choco feature list,有非常詳細的說明 - 啟用/禁用配置項:
choco enable/disable -n={feature},其中-n為-name的簡寫
默認不啟用的常用配置項:
- 啟用全域的自動確認:allowGlobalConfirmation
- 啟用病毒檢查:virusCheck
- 檢測到需要重啟時,不執行安裝、升級、卸載指令:exitOnRebootDetected
- 執行升級時,繼續使用安裝時所使用的引數(這樣升級全部包時會比較方便,目前僅測驗,在新版本正式上線后將默認啟用):useRememberedArgumentsForUpgrades
- 去掉輸出內容的顏色:logWithoutColor
付費功能
Pro Edition (Individual) 要700+,可用1-8臺電腦
狀態同步
所有付費版本都支持功能,當從外部移除或升級Chocolatey管理的軟體時,Chocolatey會更新其狀態(移除包記錄或提示升級),
sync 自動同步
僅支持商業版!Chocolatey商業版可以檢測電腦安裝的軟體,將不歸Chocolatey管理的軟體納入管理,官方檔案地址:https://chocolatey.org/docs/features-synchronize#sync-command,
指令很簡單:choco sync
尚未實作的功能
不創建桌面圖示
很遺憾,目前Chocolatey不支持該功能,可見 github issue https://github.com/chocolatey/choco/issues/4
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/13700.html
標籤:Windows
上一篇:Eclipse 快捷鍵
下一篇:windows定時重啟
