Více na
Jak zjistím, že běžný soubor v Bashi neexistuje?
Použil jsem následující skript, abych zjistil, zda soubor existuje:
#!/bin/bash
FILE=$1
if [ -f $FILE ]; then
echo "File $FILE exists."
else
echo "File $FILE does not exist."
fi
Jaká je správná syntaxe, pokud chci pouze zkontrolovat, zda soubor neexistuje?
#!/bin/bash
FILE=$1
if [ $FILE does not exist ]; then
echo "File $FILE does not exist."
fi
3054
3
Příkaz test (
[
zde) má logický operátor "not", což je vykřičník (podobně jako v mnoha jiných jazycích). Vyzkoušejte tento příklad:Výraz můžete negovat pomocí "!":
Příslušná manuálová stránka je
man test
nebo ekvivalentněman [
-- nebohelp test
nebohelp [
pro vestavěný příkaz bash.Je také možné, že soubor je nefunkční symbolický odkaz nebo neregulérní soubor, např. soket, zařízení nebo fifo. Chcete-li například přidat kontrolu nefunkčních symlinků: