Я бы хотел изменить pwd текущей оболочки из сценария ruby. Итак:
> pwd
/tmp
> ruby cdscript.rb
> pwd
/usr/bin
Это код, который у меня сейчас есть:
exec('cd /usr/bin')
К сожалению, cd - встроенная команда. Итак:
`exec': No such file or directory - cd (Errno:ENOENT)
Есть ли обходной путь для этого?
Нет способа заставить его работать в самом ruby, поэтому я переключил передачи. Я изменил скрипт, чтобы вывести путь к целевому каталогу, а затем определил функцию в .bashrc, которая передавала бы аргументы через скрипт, а затем cd в нужный каталог. Не самодостаточный, как я бы надеялся, но он сделал свою работу.
Спасибо за ответы, ребята.