Нет это не возможно, к сожалению. Как Вы, вероятно, уже знаете, можно использовать %h
расширение, но это об этом.
В Вашем случае, почему бы не использовать a for
цикл?
for i in {4..10}
do
echo -e "Host pro-$i\nHostname 192.168.1.$i\nProxyCommand ssh production-server nc %h %p\n"; >> ~/.ssh/config
done
Единственная другая опция, которую я мог придумать, возможно, создайте записи DNS с regexp, если Ваш сервер поддерживает это, и затем используйте их.
Можно заставить их работать на различных дистрибутивах с некоторой работой.
Главным, на которое полагаются программы, являются библиотеки. Эти библиотеки будут сохранены в различных местоположениях в различных дистрибутивах, но можно узнать, где эти библиотеки связаны с командой ldd.
Например, это - вывод ldd, когда выполнено против /usr/bin/vlc
на Debian
linux-vdso.so.1 (0x00007fff11969000)
libvlc.so.5 => /usr/lib/libvlc.so.5 (0x00007f597eb01000)
libvlccore.so.5 => /usr/lib/libvlccore.so.5 (0x00007f597e819000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f597e5fd000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f597e3f9000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f597e0f5000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f597ddf7000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f597dbe1000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f597d834000)
libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f597d5ee000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f597d3e6000)
/lib64/ld-linux-x86-64.so.2 (0x00007f597ed37000)
Вы видите, что все библиотеки к в /lib/x86_64-linux-gnu
В то время как на Дуге, библиотеки для vlc расположены в /usr/lib
linux-vdso.so.1 (0x00007fff5a1fe000)
libvlc.so.5 => /usr/lib/libvlc.so.5 (0x00007f84fd7c2000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f84fd5a4000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f84fd3a0000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007f84fcff5000)
libvlccore.so.7 => /usr/lib/libvlccore.so.7 (0x00007f84fcce1000)
librt.so.1 => /usr/lib/librt.so.1 (0x00007f84fcad9000)
libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x00007f84fc892000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007f84fc58f000)
/lib64/ld-linux-x86-64.so.2 (0x00007f84fd9e0000)
Как Вы видите, двоичные файлы расположены в немного отличающихся местоположениях с самим vlc двоичным файлом, имеющим различные зависимости. Так теоретически с установкой Arch VLC, я мог выполнить его на Debian путем соединения библиотек с корректными местами.
Вы могли также развернуть места, где система ищет библиотеки путем установки переменной LD_LIBRARY_PATH как так -
export LD_LIBRARY_PATH=/usr/local/libs:$LD_LIBRARY_PATH
Я не думаю, что они будут. Смешивание a /usr
раздел с различными диспетчерами пакетов, вероятно, вызовет конфликты и несовместимости. Единственным путем я думаю, что это могло работать, то, если Вы - установленное программное обеспечение от дженерика .tar.gz
файл к /opt
в этом случае это должно работать (непротестированное)
Различные дистрибутивы часто (но не всегда) помещенные файлы в различных местоположениях. Можно преобразовать пакеты с помощью постороннего объекта.
Если Вы являетесь действительно низкими на дисковом пространстве, Вы могли бы установить блендер на своем Arch и разделах Ubuntu, проверить то, что является тем же, и сделайте гибкие ссылки из файлов и каталогов (со всеми подкаталогами), которые являются тем же.
Во-первых, не смешиваться /usr
между дистрибутивами. Каждое распределение ожидает управлять тем, что там, и дистрибутивы будут продолжать перезаписывать файлы друг друга. /usr
не содержит пользовательские программы (да, это - то, от чего происходит название, но это не то, что каталог содержал за прошлые 40 лет или так), это содержит системные программы.
Программы от одного распределения могут работать при другом распределении, или они не могут. Это зависит, имеют ли дистрибутивы достаточно близкие версии библиотек, которыми пользуются программы.
Если Вы устанавливаете программы под /usr/local
или Ваш корневой каталог, и они не требуют слишком определенных версий библиотек, затем они будут работать при обоих дистрибутивах.