NAZWA¶
tempfile - w bezpieczny sposób tworzy plik tymczasowy
SKŁADNIA¶
tempfile [-d KATALOG] [-p ŁAŃCUCH] [-s
ŁAŃCUCH] [-m TRYB] [-n PLIK] [--directory=KATALOG]
[--prefix=ŁAŃCUCH] [--suffix=ŁAŃCUCH]
[--mode=TRYB] [--name=PLIK] [--help] [--version]
OPIS¶
tempfile w bezpieczny sposób tworzy plik tymczasowy. Do wyboru
nazwy korzysta z
tempnam(3) i otwiera plik, używając
znaczników O_RDWR | O_CREAT | O_EXCL. Nazwa pliku jest wypisywana na
standardowym wyjściu. Szczegóły wyboru katalogu
można znaleźć w podręczniku
tempnam(3).
Katalog, w którym zostanie utworzony plik tymczasowy, może
zostać wyszukany w następujący sposób (ale prosimy
przeczytać
tempnam(3) po dokładniejszy opis):
- a)
- Jeśli istnieje zmienna środowiskowa TMPDIR i zawiera
nazwę odpowiedniego katalogu, to jest używana.
- b)
- W przeciwnym wypadku, jeśli podano argument --directory i
jest on właściwy, to jest używany.
- c)
- W przeciwnym wypadku używane jest P_tmpdir (zdefiniowane w
<stdio.h>), jeśli jest to właściwe.
- d)
- W końcu może zostać użyty katalog zdefiniowany
podczas implementacji ( /tmp).
OPCJE¶
- -d, --directory KATALOG
- Umieszcza utworzony plik w zadanym KATALOGU.
- -m, --mode TRYB
- Otwiera plik z zadanym TRYBEM, zamiast z domyślnym 0600.
- -n, --name PLIK
- Używa PLIKU jako nazwy pliku zamiast korzystać z
tempnam(3). Jeśli podano tę opcję, to -d, -p i
-s są ignorowane.
- -p, --prefix ŁAŃCUCH
- Do wygenerowania nazwy wykorzystuje do pięciu liter z
ŁAŃCUCHA.
- -s, --suffix ŁAŃCUCH
- Tworzy plik z ŁAŃCUCHEM jako przyrostkiem nazwy.
- --help
- Wypisuje na standardowym wyjściu komunikat o sposobie użycia
i pomyślnie kończy pracę.
- --version
- Wypisuje na standardowym wyjściu informację o wersji i
pomyślnie kończy pracę.
ZWRACANE WARTOŚCI¶
Zwrócony kod 0 oznacza, że pomyślnie stworzono plik
tymczasowy. Każdy inny kod wskazuje błąd.
BŁĘDY¶
Podczas tworzenia plików na partycji NFS nie jest gwarantowane utworzenie
pliku na wyłączność. tempfile nie potrafi
utworzyć tymczasowych katalogów. tempfile nie jest zalecany;
zamiast niego należy używać
mktemp(1).
PRZYKŁAD¶
#!/bin/sh
#[...]
t=$(tempfile) || exit
trap "rm -f -- '$t'" EXIT
#[...]
rm -f -- "$t"
trap - EXIT
exit
ZOBACZ TAKŻE¶
tempnam(3),
mktemp(1)
TŁUMACZENIE¶
Niniejsze tłumaczenie jest częścią pakietu
debianutils. Strony podręcznika zawarte w pakiecie
przetłumaczyli: Przemek Borys (PTM) <pborys@dione.ids.pl>, Wojtek
Kotwica (PTM) <wkotwica@post.pl>, Michał Kułach
<michal.kulach@gmail.com> oraz Robert Luberda
<robert@debian.org>.