DOKK / manpages / debian 10 / debianutils / tempfile.1.pl
TEMPFILE(1) General Commands Manual TEMPFILE(1)

tempfile - w bezpieczny sposób tworzy plik tymczasowy

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]

tempfile creates a temporary file in a safe manner. It uses mkstemps(3) to choose the name and opens it with O_RDWR | O_CREAT | O_EXCL. The filename is printed on standard output.

The directory in which to create the file might be searched for in this order:

Jeśli istnieje zmienna środowiskowa TMPDIR i zawiera nazwę odpowiedniego katalogu, to jest używana.
W przeciwnym wypadku, jeśli podano argument --directory i jest on właściwy, to jest używany.
W przeciwnym wypadku używane jest P_tmpdir (zdefiniowane w <stdio.h>), jeśli jest to właściwe.
W końcu może zostać użyty katalog zdefiniowany podczas implementacji (/tmp).

Umieszcza utworzony plik w zadanym KATALOGU.
Otwiera plik z zadanym TRYBEM, zamiast z domyślnym 0600.
Używa PLIKU jako nazwy pliku zamiast korzystać z tempnam(3). Jeśli podano tę opcję, to -d, -p i -s są ignorowane.
Do wygenerowania nazwy wykorzystuje do pięciu liter z ŁAŃCUCHA.
Tworzy plik z ŁAŃCUCHEM jako przyrostkiem nazwy.
Wypisuje na standardowym wyjściu komunikat o sposobie użycia i pomyślnie kończy pracę.
Wypisuje na standardowym wyjściu informację o wersji i pomyślnie kończy pracę.

Zwrócony kod 0 oznacza, że pomyślnie stworzono plik tymczasowy. Każdy inny kod wskazuje błąd.

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).

#!/bin/sh
#[...]
t=$(tempfile) || exit
trap "rm -f -- '$t'" EXIT
#[...]
rm -f -- "$t"
trap - EXIT
exit

tempnam(3), mktemp(1)

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>.

27 czerwca 2012 Debian