Czy istnieje idiomatyczny sposób wykrycia, czy „znajdź” znalazł jakieś dopasowania? Obecnie używam
COUNT=`find ... | wc -l`
if [ "$COUNT" -gt 0 ]; then
ale wydaje mi się to trochę pośrednie. Ponadto chciałbym znaleźć, aby przestał szukać, gdy znajdzie pasujący element, więc nie marnuje czasu i wysiłku. Muszę tylko wiedzieć, czy są jakieś pasujące pliki.
Aktualizacja: Popełniłem błąd, pisząc moje pytanie bez kodu przede mną: używam wc -l
w innym przypadku, w którym i tak muszę znać całkowitą liczbę znalezionych plików. W przypadku, gdy testuję tylko, czy są jakieś dopasowania, użyłem if [ -z $(find …) ]
.
-n
dotyczy tylko zmiennych „zdefiniowanych” ($ abc, $ xyz itp.), Ale przypuszczam, że $ (...) jest „zdefiniowaną” zmienną temp. +1 ... (i po prostu ostatnio czytałem, że używanie-n
jest ryzykowne, chyba że masz pewność, że zmienna nie została już zadeklarowana i jest „nieużywana)… ale temp nie będzie miał takiej możliwości… niezainicjowany kontra pusty