- noclobber - Zabezpiecza przed przypadkowym nadpisaniem istniejącego pliku w przypadku używania przekierowań
Włączenie opcji
set -o noclobber
lub
set -C
Wyłączenie opcji
set +o noclobber
lub
set +C
Po włączeniu tej opcji jeśli w przekierowaniach > plik i >& plik plik istnieje, to zostanie wyświetlony błąd.
Zabezpiecza to przed przypadkowym nadpisaniem istniejącego pliku.
Aby zapisać do istniejącego pliku należy wyłączyć opcję noclobber lub też użyć przekierowania >| plik.
Przykład:
#!/bin/bash
touch plik
set -o noclobber
ls > plik
ls >| plik
set +C
echo koniec > plik
Po wykonaniu powyzszego skryptu powinniśmy uzyskać błąd:
bash: plik: cannot overwrite existing file
Jest to związane z tym, że opcja noclobber była wlączona w momencie przekierowywania wyjścia z polecenia ls (a plik przecież istniał!).