Jak sprawdzić istnienie plików za pomocą skryptów Bash:
1) Wprowadzając nazwę pliku w terminalu:
Po pierwsze, musimy utworzyć plik skryptu Bash, użyć poniższego polecenia:
$ Touch TestFile.cii
Nazwa utworzonego przeze mnie pliku to „test testowy.sh ”,„.Rozszerzenie sh ”wskazuje plik skryptu powłoki:
Otwórz „test testowy.sh ”w dowolnym edytorze tekstu. Następnie napisz skrypt, zapisz go, naciskając „Zapisz”.
Jednym ze sposobów jest znalezienie pliku, prosząc o nazwę pliku od użytkownika w terminalu.
Używać "-F„Aby sprawdzić istnienie pliku.
Napisz poniższy skrypt:
#!/bin/bash
echo „Wprowadź swoją nazwę pliku”
Przeczytaj NewFile1
Jeśli [-f „$ newFile1”]
Następnie
Echo „Plik znajduje się”
w przeciwnym razie
Echo „Plik nie znaleziono”
fi
Wróć do terminala i uruchom plik, aby wydrukować wyjście:
./Nazwa pliku.cii
Zezwolenie odrzucone komunikat zostanie wyświetlony w terminalu.
Uczyń go wykonywanie, wykonując poniżej wspomniane polecenie:
$ chmod +x testowy.cii
Wprowadź nazwę pliku, a wydrukuje wyjście:
2) Wpisując nazwę pliku podczas pisania skryptu:
Inny sposób znalezienia pliku, podając nazwę pliku podczas pisania skryptu. Mamy trzy sposoby sprawdzenia dostępności pliku. Pierwszy z nich używa polecenia „Test”, drugi używa „If” z wyrażeniem w nawiasach kwadratowych, a trzeci jest również z „If”, ale podwójnie kwadratowe wsporniki, jak pokazano poniżej:
Zrozummy to z przykładami:
1) test [wyrażenie]
Skopiuj dany skrypt i wklej go do edytora, zapisz go:
#!/bin/bash
FileName = File1
jeśli test -f „$ filename”;
Następnie
echo "$ plik znalazł."
w przeciwnym razie
echo „nie znaleziono pliku $”
fi
Wyjście:
Ponieważ w moim katalogu nie ma takiego pliku, kod wyświetla komunikat „Plik nie można znaleźć”.
2) Jeśli [wyrażenie]
Skopiuj następujący skrypt, aby sprawdzić, czy plik istnieje, czy nie:
#!/bin/bash
nazwa pliku = myfile.tekst
if [-f „$ filename”];
Następnie
echo "$ FILEName znalazł."
w przeciwnym razie
Echo „Nie znaleziono nazwy pliku”
fi
Wyjście:
3) Jeśli [[wyrażenie]]
Skopiuj poniżej napisany skrypt i wklej go na terminalu:
#!/bin/bash
nazwa pliku = test testowy
if [[-f "$ filename"]];
Następnie
echo "$ FILEName znalazł."
w przeciwnym razie
echo „$ filename nie znaleziono”
fi
Wyjście:
Aby sprawdzić katalog:
3) Wpisując nazwę katalogu podczas pisania skryptu
Użyj "-D„Flaga, aby sprawdzić istnienie katalogu.
W poniższym skrypcie „Dir11” jest zmienną, w której przechowujesz ten plik, który znajdziesz; W tym przykładzie chcę sprawdzić nazwę katalogu „testDir” istnieje lub nie.
#!/bin/bash
Dir11 = testDir
Jeśli [-d „$ dir11”]
Następnie
Echo „Znalazł katalog”
w przeciwnym razie
Echo „Directory nie został znaleziony”
fi
Wyjście:
2) Wprowadzając nazwę pliku w terminalu:
Po uruchomieniu polecenia w terminalu, aby sprawdzić, czy katalog istnieje, czy nie, musisz wprowadzić nazwę katalogu, której szukasz:
#!/bin/bash
echo "Wpisz nazwę katalogu."
Przeczytaj Dir1
Jeśli [-d „Dir1”]
Następnie
Echo „Znaleziono”
w przeciwnym razie
Echo „Directory nie znalazł”
fi
Wyjście:
Sprawdzanie pliku bez użycia instrukcji „jeśli”:
Polecenie „Test” można wykonać bez instrukcji „If”. Wyświetli się tylko wtedy, gdy istnieje plik; W przeciwnym razie nie byłoby wyjścia:
Napisz skrypt:
test -f myfile.TXT && ECHO „Plik został znaleziony”
[-f myfile.txt] && echo "$ plik został znaleziony."
[[-f myfile.txt]] && echo "$ plik został znaleziony."
Wyjście:
Sprawdzanie katalogu bez użycia instrukcji „If”:
Użyj poniżej wspomnianych stwierdzeń, aby sprawdzić, czy katalog istnieje, czy nie:
[[-d TestDir]] && Echo „Directory Iste”
2) [-d TestDir] && echo „Directory Iste”
Wyjście:
Sprawdzanie wielu plików/katalogów:
1) Sprawdzanie wielu plików za pomocą instrukcji „If”:
Użyj flagi „-A”, aby sprawdzić istnienie różnych plików zamiast używać zagnieżdżonych instrukcji „If/Else”:
#!/bin/bash
Jeśli [-f New_file.txt -a -f Newfile.tekst ]; Następnie
echo „istnieją oba pliki."
fi
Innym sposobem jest:
#!/bin/bash
Jeśli [[-f New_file.txt && -f NewFile.tekst ]]; Następnie
echo „istnieją oba pliki."
fi
Wyjście:
2) Sprawdzanie wielu plików bez użycia instrukcji „If”:
Użyj następującej instrukcji, aby jednocześnie sprawdzić wiele plików 1 bez użycia „IF”:
[[-f New_file.txt && -f NewFile.txt]] && echo „Oba pliki wychodzą."
[[-f New_file.txt && -f NewFile.txt]] && echo „Oba pliki wychodzą."
Wyjście:
Wniosek:
W tym artykule pokazano, jak korzystać z skryptów BASH do sprawdzenia pliku lub katalogu. Użyliśmy różnych opcji, aby sprawdzić dostępność pliku. Po pierwsze, używamy polecenia „test” z różnymi flagami. Następnie nauczyliśmy się użycia „If”, zagnieżdżonego „IF-Else” i bez oświadczeń „IF” do sprawdzenia pliku lub katalogu. Przeglądaliśmy również, jak sprawdzić wiele plików lub katalogów.