Fish Shell:
Sprawdzanie, czy katalog istnieje
Jak to zrobić:
Powłoka Fish używa komendy test
do sprawdzania typów plików i ich cech, w tym tego, czy cel jest katalogiem. Oto podstawowy wzorzec sprawdzania, czy katalog istnieje:
if test -d /path/to/dir
echo "Katalog istnieje"
else
echo "Katalog nie istnieje"
end
Przykładowe wyjście:
Katalog istnieje
Dla bardziej płynnych operacji na plikach i katalogach, można sięgnąć po zewnętrzne narzędzia takie jak fd
, chociaż jest ono częściej używane do znajdowania plików i katalogów, niż tylko do sprawdzania ich istnienia. Jednak połączenie go ze skryptowaniem w Fish może przynieść pożyteczne rezultaty:
set dir "/path/to/search"
if fd . $dir --type directory --max-depth 1 | grep -q $dir
echo "Katalog istnieje"
else
echo "Katalog nie istnieje"
end
Ten przykład z użyciem fd
wyszukuje katalog na określonej głębokości, a grep
sprawdza zgodność, czyniąc go wszechstronnym dla zniuansowanych sprawdzeń. Jednakże, dla bezpośredniego celu sprawdzania istnienia, trzymanie się wbudowanej w Fish komendy test
jest zarówno efektywne, jak i proste.