/ dev / {tcp, udp}
- это только внутренние компоненты bash.
Сокеты tcp и udp хранятся в / proc / net / {tcp, udp}
ядром
Обходной путь, который может сработать для вас, - создать несколько сценариев оболочки в локальном каталоге и поместить их в путь поиска вместо удаленного каталога.Это не панацея: вам нужно обновлять оболочки каждый раз, когда изменяется содержимое удаленного каталога. Но в этом случае нет доступа к удаленному файлу, если вы не выполняете программу.
Вам нужна символическая ссылка, а не сценарий-оболочка, потому что завершение иногда проверяет, являются ли файлы исполняемыми, что означает вызов stat
файлов. Но все обертки могут быть символическими ссылками на один исполняемый файл.
Раз и навсегда создайте локальный каталог ~ / remote-scripts
и исполняемый файл ~ / remote-scripts / .remote-wrapper
, содержащий
#! / bin / sh
exec "/ remote / path / bin / $ {0 ## * /}" "$ @"
Для обновления ~ / remote-scripts
, запустите этот фрагмент:
find ~ / remote-scripts -type l -exec rm {} +
для x в / remote / path / bin / *; сделать ln -s .remote-wrapper ~ / remote-scripts / "$ {x ## * /}"; done
Поместите ~ / remote-scripts
в свой ПУТЬ
.