рыбный эквивалент расширения ${this :-that} и подобных

Нет абсолютно никакой разницы между временным файлом и обычным файлом.

Временный файл является обычным файлом, а обычный файл является «обычным», а не каталогом, специальным файлом устройства, именованным каналом и т. д.

Единственная разница, как вы указываете, заключается в типичном использовании файла. Когда программа или сценарий создает «временный файл», обычно это обычный файл, который используется для хранения временных данных, которые не нужны после завершения жизненного цикла создавшего его процесса. Такие файлы часто создаются в $TMPDIR.

POSIX определяет:

File: An object that can be written to, or read from, or both. A file has certain attributes, including access permissions and type. File types include regular file, character special file, block special file, FIFO special file, symbolic link, socket, and directory. Other types of files may be supported by the implementation.

Regular file: A file that is a randomly accessible sequence of bytes, with no further structure imposed by the system.

Однако здесь ничего не говорится об определении «временного файла», потому что это не конкретный тип файла (, а способ использования обычных файлов ).

1
11.08.2020, 01:32
1 ответ

Нет ничего более короткого, чем раскрытие переменной оболочки posix:

if set -q this; or test -z $this
    set x $that
else
    set x $this
end

или «краткий» вариант

begin; set -q this; or test -z $this; end; and set x $that; or set x $this

(Буду рад оказаться неправым на этот счет)

1
18.03.2021, 23:13

Теги

Похожие вопросы