2016-05-23 3 views
0

У меня возникли проблемы при установке WP-сканирование, EXPECIALLY с помощью команды:Как я могу добавить/установить путь Ruby в bash?

sudo gem install bundler && bundle install --without test 

, которая возвращает:

WARNING: You don't have /root/.gem/ruby/2.3.0/bin in your PATH, 
    gem executables will not run. 
Successfully installed bundler-1.12.4 
Parsing documentation for bundler-1.12.4 
Done installing documentation for bundler after 5 seconds 
1 gem installed 
bash: bundle: command not found 

Я искал и, кажется, я не ставил путь на Ruby, но когда я пытаюсь установить его с помощью «Setup», Баш возвращает:

-e:1: unexpected fraction part after numeric literal 
/root/.gem/ruby/2.3.0/ 
       ^

Это файл .bashrc:

# 
# ~/.bashrc 
# 

# If not running interactively, don't do anything 
[[ $- != *i* ]] && return 

alias ls='ls --color=auto' 
PS1='[\[email protected]\h \W]\$ ' 
# >>>>BEGIN ADDED BY CNCHI INSTALLER<<<< # 
BROWSER=/usr/bin/chromium 
EDITOR=/usr/bin/nano 
# >>>>>END ADDED BY CNCHI INSTALLER<<<<< # 

#la riga inferiore serve a creare il path corretto di gem /ruby 
PATH="$(ruby -e '/root/.gem/ruby/2.3.0/')/bin:$PATH" 

Что я делаю неправильно?

Вот драгоценный камень окр возвращение:

RubyGems Environment: - RUBYGEMS VERSION: 2.5.1 - RUBY VERSION: 2.3.1 (2016-04-26 patchlevel 112) [x86_64-linux] - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/2.3.0 - USER INSTALLATION DIRECTORY: /home/thecave3/.gem/ruby/2.3.0 - RUBY EXECUTABLE: /usr/bin/ruby - EXECUTABLE DIRECTORY: /usr/bin - SPEC CACHE DIRECTORY: /home/thecave3/.gem/specs - SYSTEM CONFIGURATION DIRECTORY: /etc - RUBYGEMS PLATFORMS: - ruby - x86_64-linux - GEM PATHS: - /usr/lib/ruby/gems/2.3.0 - /home/thecave3/.gem/ruby/2.3.0 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :backtrace => false - :bulk_threshold => 1000 - "gem" => "--user-install" - REMOTE SOURCES: - https://rubygems.org/ - SHELL PATH: - /usr/local/sbin - /usr/local/bin - /usr/bin - /usr/bin/site_perl - /usr/bin/vendor_perl - /usr/bin/core_perl - /root/.gem/ruby/2.3.0/bin

+0

Пожалуйста, добавьте вывод 'gem env' на свой вопрос, отформатированный соответствующим образом. Как правило, нам не нужно добавлять путь к Ruby, поскольку двоичный файл находится в существующем пути, если вы не установили его из источника, который помещал его в '/ usr/local/bin' или специальный префикс, или вы использовали песочницу. И, поскольку вы не сказали, какую песочницу мы должны принять, это стандартная установка. –

ответ

1

Добавление следующей строки в .bashrc должен сделать трюк:

export PATH="$PATH:/root/.gem/ruby/2.3.0/bin" 

$(..) является замена команды и способ захватить вывод из команды:

a=$(echo 1234) 

присвоит значение 1234 до a, конечно же, это может быть достигнуто с помощью a=1234.

ruby -e '...' 

будет оценивать код, переданный после -e, в вашем случае /root/.gem/ruby/2.3.0/, который не является действительным кодом рубин, но путь, чтобы найти исполняемые файлы.

Я также добавил путь Ruby в конец переменной PATH. Это считается наилучшим подходом, так как оболочка будет искать его, чтобы найти нужную программу. Рассмотрим следующее:

~/bin % export PATH="$HOME/bin:/bin:/usr/bin" 
~/bin % cat grep 
#!/bin/sh 
echo "got ya" 
~/bin % grep '...' '...' 
got ya 
+0

Большое спасибо, эта резолюция решила мою проблему! – Thecave3

Смежные вопросы