Dosya sistemimde var olup olmadığını kontrol etmek istediğim dosyaların bir listesi var. Bunu şu şekilde kullanarak yapmayı düşündüm find:
for f in $(cat file_list); do
find . -name $f > /dev/null || print $f
done
(kullanarak zsh), ancak dosyayı bulsun veya bulmasın çıkmış gibi findgörünmüyor 0. Ben olmadığını görmek için test başka testte içinden geçebileceği tahmin findherhangi çıkışı (ham ama etkili değiştirmek şeklinde olur üretir > /dev/nullile |grep '') ama bir keçi yakalamak için bir trol kullanmak gibi bu hissediyor (diğer milletlerden balyoz ve ceviz hakkında bir şey yazabilir ).
findBana yararlı bir çıkış değeri vermeye zorlamanın bir yolu var mı ? Ya da en azından bu dosyaların bir listesini almak için değil bulduk? (Mantıksal bağların kurnaz bir seçimiyle ikincisinin belki de daha kolay olduğunu hayal edebilirim, ancak anlamaya çalıştığımda her zaman düğümlerde bağlandığım görünüyor.)
Arkaplan / Motivasyon: "Ana" bir yedeğim var ve bunları silmeden önce yerel makinemdeki bazı dosyaların ana yedeklememde var olup olmadığını kontrol etmek istiyorum (biraz alan yaratmak için). Bu yüzden dosyaların bir listesini hazırladım ssh, ana makineye düzenledim ve daha sonra eksik dosyaları bulmanın en iyi yolunu bulmaktan zarar gördüm .
locatedosya sisteminin mevcut durumunu göstermiyor, bir gün hatta bir haftalık olabilir. Bu, yedekleri test etmek için bir temel olarak uygundur.
locate.