0
我再次被過時的緩存咬了。我終於厭倦了查找所有的緩存重建命令,並決定寫一個簡短的zsh函數來完成我所知道的所有事情(並且我發現他們可以進入這裏)。下面是我在此刻得到了:同時運行多個sudo'd命令
recache() {
sudo true
sudo updatedb &
local updatedbpid=$!
sudo ldconfig &
local ldconfigpid=$!
rehash
wait $updatedbpid $ldconfigpid
}
第一sudo true
旨在確保sudo
具有最近的時間戳,使下面的後臺進程不坐暫停輸入等着我輸入密碼。我不使用sudo -b
,因爲我想wait
,直到緩存更新,然後繼續我的工作。
大部分時間,這個作品很棒;但約三次左右的一次,我得到了以下文本的無盡副本:
[2] + suspended (tty output) sudo updatedb
爲什麼?我能做些什麼來解決它?