/dev/tcp/host/port, /dev/udp/host/port что это за модуль ядра?

В нем говорится, что атрибуты, отличные от -aи -A, не будут иметь никакого эффекта во время первого назначения.

Пример с атрибутом верхнего регистра:

$ declare -a -u array=( hello )
$ printf '%s\n' "${array[@]}"
hello
$ array+=( world )
$ printf '%s\n' "${array[@]}"
hello
WORLD
1
29.10.2019, 19:27
1 ответ

Как говорит Джефф, это функция , реализованная Bash , а не ядром. Он доступен только для сценариев оболочки или в командной строке оболочки; другие программы не открываются /dev/tcp/....

Чтобы реализовать это как модуль ядра, вам нужно будет предоставить новую виртуальную файловую систему.

Чтобы увидеть это в действии, вы можете комбинировать Bash с netcat. Беги

nc -l -p 5555

в одном терминале, затем

echo Hello > /dev/tcp/localhost/5555

в другом; вы увидите «Hello» в запущенном терминале nc.

6
27.01.2020, 23:15

Теги

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