Software-Installation

yum - 檢查包是否已經安裝

  • September 6, 2021

當我執行yum install <X>where <X>has been installed 時,yum以返回狀態 1 退出並列印“錯誤:無事可做”。

除了在輸出中檢查這個字元串(這似乎是我的腳本所基於的非常不穩定的事情)之外,還有什麼方法可以測試包是否已經存在?顯然,yum 知道它是否已經存在,因為它拋出了那個錯誤,但是我怎樣才能訪問這些知識呢?

除此之外,一些包是通過 URL 下載的,而不是包名稱,因此檢查yum list installed不起作用。

在您的腳本中使用rpm -q packagename

if  rpm -q  vim-enhanced
then
 echo "Already installed vim-enhanced"
else
 echo "Install vim-enhanced"
fi

你可以試試:

#yum list installed | grep tmux
tmux.x86_64                      1.9a-5.fc21        @updates                    

或者:

#yum list installed tmux
Loaded plugins: langpacks
Installed Packages
tmux.x86_64                                                               1.9a-5.fc21                                                               @updates

沒有grep你得到一些額外的行,但兩個輸出都可以根據你的需要通過一些文本編輯器進行管道傳輸。

引用自:https://unix.stackexchange.com/questions/192473