Я собираюсь противоречить mrb и сказать, что можно сделать альтернативы, не изменяясь "#!" строка.
Предположим, что у Вас есть рубиновый сценарий с #!/usr/bin/env ruby
как первая строка.
Вы хотите /path/to/better/ruby/version/whatever
для запущения скрипта Вы устанавливаете переменную окружения PATH, чтобы иметь /path/to/better/ruby/version
во-первых:
PATH=/path/to/better/ruby/version:$PATH whatever_script_name_is
Вы хотите /usr/local/bin/ruby
запускать скрипт? Установите ПУТЬ соответственно:
PATH=/usr/local/bin:$PATH whatever_script_name_is
Обратите внимание, что игра с ПУТЕМ может вызвать другие проблемы в случае, что рубиновый исполняемый файл, Вы хотите запустить скрипт, находится в том же каталоге с другими альтернативными программами. Например, если /usr/local/bin
имел BSD cat
, grep
, sed
в нем, а также ruby
, затем, когда Вы устанавливаете PATH=/usr/local/bin:$PATH
Вы получите исполняемые файлы BSD вместо исполняемых файлов Linux. Это могло заключить проблему в корпус.
В первую очередь: То, что такое процесс, выгружается к диску? процесс никогда не выгружается, страницы.
Также: стек Kernel процесса всегда пуст, когда процесс не находится в состоянии ядра.