我正在使用Perl編寫軟件包安裝程序腳本。我需要一個命令(可能是OS命令),如果安裝了Ubuntu/Debian軟件包,它將返回一個簡單的0或1給調用者腳本。軟件包管理器命令,在Ubuntu/Debian中返回0或1(如果安裝了軟件包)
我已經試過
dpkg -s
它總是返回0
dpkg -L
差不多的作品,但如果用戶沒有
apt-get --purge remove
包,某些文件被左,總是返回0
我不想grep文本 - 一個簡單的真或假是我需要的。 任何想法?
@Andy:
aptitude remove unixodbc -y
dpkg-query -W unixodbc; echo $?
unixodbc 2.2.11-21
0
aptitude install unixodbc -y
dpkg-query -W unixodbc; echo $?
unixodbc 2.2.11-21
0
但'grep'確實返回一個簡單的真或假。 – ikegami 2011-05-13 23:21:36
@ikegami必須有簡單的包管理器命令返回0或1.如果我grep的文本發生變化,並且我的程序在世界中,我的所有程序都將失敗 - 這不是一個選項。 – bitbucket 2011-05-13 23:27:39
包狀態記錄。如果他們改變了,那將違反他們的文件。 – ikegami 2011-05-13 23:31:58