Почему PATH в ruby выполняется Shell Отличается от пути в термине? И как мне сделать их EQV?
PATH
Shell
puts %x[echo $SHELL] puts %x[echo $PATH].split(':').length
возвращает
/bin/bash 8
но в оболочке:
/bin/bash 13
Скорее всего, потому что оболочка, запущенная %x, не является источником вашего профиля (это не оболочка входа в систему).Если это так, то вы можете сделать
%x
puts %x[bash --login -c 'echo $PATH']