檢測系統中包檔案是否完整的方法

2021-09-05 06:13:37 字數 792 閱讀 6510

昨天,我用sudo開啟了乙個檔案瀏覽器,在去廁所之前沒有鎖定螢幕,被小孩子給誤刪了/usr/lib/evolution*(後面記不清了)目錄,而且居然在**站都找不到,真不明白他居然有這等電腦水平!重新安裝evolution發現接收伺服器協議中pop等協議都沒了,只剩下exchange一項了,於是上了irc的#ubuntu-zh,找到了華華,問問到底應如何才能找到是哪個包少了檔案。

經過華華,月月和羅勇的幫助,終於解決了該問題,華華給出了他的指令碼:

一開始我用的指令碼是:

[code]$find /var/lib/dpkg/info -name '*list' -exec cat {} \; | xargs ls 2> errorpkgs.lst[/code]

這個也是我得出結果的那個,執行完之後,使用命令

[code]$grep 沒有 errorpkgs.lst>errpkgfind.lst[/code]

在errpkgfind.lst中找到相應的缺失檔案,然後用

[code]$dpkg -s 缺失檔案[/code]

就可以知道是哪個包損壞了

可是在執行的過程中發現該指令碼執行速度很慢,於是華華給出了他的最終版

[code]

#!/bin/sh

cat /var/lib/dpkg/info/*.list | while read f

do[ ! -f "$f" ] && echo $f >> errpkg.lst

done

[/code]

不過這東東尚未執行過,不過看起來似乎沒錯,所以如果有哪位仁兄也遇到我這樣的情況不妨一試!

檢測系統中包檔案是否完整的方法

我用sudo開啟了乙個檔案瀏覽器,在去廁所之前沒有鎖定螢幕,被小孩子給誤刪了 usr lib evolution 後面記不清了 目錄,而且居然在 站都找不到,真不明白他居然有這等電腦水平!重新安裝evolution發現接收伺服器協議中pop等協議都沒了,只剩下exchange一項了,於是上了irc的...

PHP檢測檔案方法,類方法是否存在

1 php判斷系統函式或自己寫的函式是否存在 bool function exists string function name 判斷函式是否已經定義,例如 if function exists curl init else 2 php判斷類是否存在 bool class exists string...

檔案是否存在檢測的數個解決方法。

引用文章 1 使用標準c 流來判斷。2 使用access來判斷。3 使用boost庫中的filesystem類來判斷 4 如果在windows平台下,可以使用api來判斷。findfirstfile。此用法尚不熟悉 需要包含 include shlwapi.h 使用 pathfileexists l...