Основываясь на ответе Хастура о сорсинге, кажется, это то, что мне нужно в second.sh
, чтобы вернуть статус, не убивая терминал:
#!/usr/bin/env bash
...
# if success, return 0
[ "$0" = "$BASH_SOURCE" ] && exit 0 || return 0
# else for failure, return non-0
[ "$0" = "$BASH_SOURCE" ] && exit 1 || return 1
tmp
может быть сокращением от временный (, как и переходный ), поскольку эти файлы, как и файлы журналов, периодически сменяются/усекаются. Файлы utmp
и wtmp
также изначально находились в /tmp
, когда они были представлены в Версии 3 AT&T Unix .
Однако в настоящее время tmp
может быть прочитано как сокращение от timestamp . tm
также является общепринятой аббревиатурой времени(см., например, руководство для ctime()
функции C и заголовок time.h
), и эти файлы содержат метки времени для системных событий. относительно входа пользователей в систему.
u
в utmp
, вероятно, исходит от пользователя . b
вbtmp
(в системах, в которых она есть ), скорее всего, возникает из-за неверных(неверных входов в систему ). w
вwtmp
может исходить от who(как в "кто был в системе?" ), но не из who
илиw
(утилит ), поскольку они используют utmp
, а не wtmp
.