Для cd ничего не меняет, cd самостоятельно разрешает симлинки, к тому же она всегда ожидает каталог в качестве аргумента.
rpg ~$ cd /bin
rpg bin$ file /bin
/bin: symbolic link to `usr/bin'
Непонятен вопрос. Заканчивать где? Разница будет, если /home/myprofile/somedir - это симлинк на каталог. /home/myprofile/somedir будет означать сам файл симлинка, а /home/myprofile/somedir/ - каталог, на который он ссылается. ls точно их будет различать.
Я не спец по Win, но базовые принципы простые:
* контейнеры (containers), хороший пример - Docker, в Win Server 2016 появился есть аналог
* неймспейсы (namespaces), аналогов в Win не встречал
* паравиртуализация (Xen), он кроссплатформенный и не требует много ресурсов
Это называется long options. В Bash встроен обработчик только для short options - это параметры вида -a -b -c 123. Реализовать long options корректно - непростая задача, так как вы должны учитывать возможность присутствия или отсутствия аргумента у параметра, а также магическое сочетание --, которое запрещает обработку любых параметров. Соответственно в Интернете можно наткнуться на реализацию longopt в Bash различной степени извращённости. Кроме того, советую посмотреть в сторону docopt.org/.https://github.com/docopt/docopts
По-правильному делается так: скрипт инициализации забрасывается в /etc/profile.d и работает для всех пользователей. После удаления программы этот скрипт также удаляется. Так работает Qt, mc и множество других нормальных программ в нормальных дистрибутивах. Попробуйте закинуть nvm.sh в /etc/profile.d.
bashrc у каждого пользователя свой, от каких пользователей происходит запуск скрипта и для какого пользователя патчится bashrc? И в чём смысл этого патча?
Rou1997: В D-Bus есть объекты, интерфейсы, методы, свойства, сигналы. Всё что нужно для переносимости между любыми языками программирования, включая Си. Был когда-то зоопарк из IDL, CORBA, Bonobo, DCOP, слава Богу всё это выпилили из линуксов и теперь всё лежит на шине D-Bus - можно хоть из bash методы дёргать. С проприетарными протоколами, естественно, не совместим, но вопрос был не об этом.
Так как батареи разряжаются последовательно, нельзя заранее определить, сколько ноут проработает на запасной батарее, пока она не начнёт разряжаться. Скорее всего, в общем случае решить не получится, т.к. не будет хватать данных.
По ssh нельзя видеть экран, но можно открыть удалённое графическое приложение, не мешая пользователю. Если речь идёт именно об удалённом помощнике - то VNC.
Только проблемка - если длина строки ноль (пустая строка) - вполне вероятно программа вылетит с ошибкой. Добавить проверку, что длина строки больше нуля и дело в шляпе.
rpg ~$ cd /bin
rpg bin$ file /bin
/bin: symbolic link to `usr/bin'