Точка обоих типов ссылок должна позволить заставлять файл появиться в двух местах одновременно. Это имеет большое использование. 9 раз из 10 Вы хотите использовать символьные ссылки.
Символьные ссылки или "символьные ссылки" работают немного как ярлыки Windows. Содержание символьной ссылки является указателем на реальное местоположение файла/каталога. При удалении реального файла символьная ссылка станет "свисанием" и не будет работать. Удаление символьной ссылки не удаляет реальный файл. У Вас может быть столько символьных ссылок на единственный файл (или даже другие символьные ссылки), сколько Вам нравится.
В отличие от Windows, хотя, они работают над уровнем файловой системы, не, окружают или прикладной уровень, так же в значительной степени любое приложение будет "следовать" за символьными ссылками как ожидалось. ls -al
может использоваться в качестве быстрого способа видеть, где символьные ссылки "указывают" на.
Hardlinks работают даже на более низком уровне. hardlink является фактической, физической on-the-filesystem-level записью каталога файла. Технически, запись каталога является hardlink, таким образом каждый файл имеет по крайней мере один hardlink в каталоге где-нибудь. Hardlinks не являются отдельными из файла, на который они указывают; если файл имеет несколько hardlinks в различных каталогах, удаляя hardlink с утилитами как rm
действительно не удалит файл, пока всех hardlinks не не стало.
Я не могу думать о ситуации, где использование hardlinks является общим, или даже необходимое, если Вы намеренно не хотите препятствовать файлам то, чтобы быть удаленным или делаете некоторую странную работу низкого уровня с разделами или другими связанными с файловой системой вещами.Править: Существуют прекрасные идеи в других ответах на этот вопрос, хотя!
Вызовите busybox двоичный файл как busybox
, и Вы получаете строку с версией Busybox, еще несколько строк пуха и список утилит, включенных в двоичный файл.
busybox | head -1
Большинство утилит показывает сообщение использования при вызове их с --help
, с номером версии в первой строке.
ls --help 2>&1 | head -1
Можно проверить версию в любой системе, работающей busybox путем выполнения любой из команд с --help
флаг для наблюдения использования. Первая строка вызовов использования включает примечание о busybox версии:
$ cat --help
BusyBox v1.18.4 (2011-03-13 15:36:03 CET) multi-call binary.
Usage: cat [FILE]...
Concatenate FILEs and print them to stdout
Если Вы не выполняете busybox, но установили его в Вашей системе, можно проверить инстанцирование одной из утилит как так:
$ busybox cat --help
(Редактирование: Поскольку Gilles отмечает, что можно также назвать busybox двоичный файл без команды и получить тот же заголовок),
Наконец, существует также примечание в конце страницы справочника, которая показывает, от какой версии это:
$ man busybox | tail -n 1
version 1.18.4 2011-03-13 BUSYBOX(1)
cat --version
на нем он показывает cat: unrecognized option '--version'
.
– Tom Brito
04.07.2011, 16:20
ls --version
с тем же результатом ls: unrecognized option '--version'
– Tom Brito
04.07.2011, 16:22
busybox
двоичный файл непосредственно имеет большую часть смысла. Мой только работает по той же причине и бросает ошибку, кроме того. Я исправлю его.
– Caleb
04.07.2011, 18:15
Разве это не сообщает о версии, когда Вы соединяетесь,
т.е.
telnet 10.10.10.1
BusyBox v0.61.pre (2008.06.11-10:37+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
#
или выполненный (например),
# busybox ash
BusyBox v1.17.1 (Debian 1:1.17.1-8) built-in shell (ash)
Enter 'help' for a list of built-in commands.
#
Так как это не было упомянуто, sh --help
также работает.
# sh --help
BusyBox v1.27.1 (2020-06-11 08:53:57 UTC) multi-call binary.
Usage: sh [-/+OPTIONS] [-/+o OPT]... [-c 'SCRIPT' [ARG0 [ARGS]] / FILE [ARGS]]
Unix shell interpreter
# _