Я хочу начать, сказав ... Мне действительно не нужно использовать 1.9.2. Я понимаю, что вы никогда не используете Python 3.2, поэтому, если общий совет заключается в том, что я должен использовать 1,8, я сделаю это. Но не говорите мне об этом, потому что это проще.
Независимо от того, какую версию я должен использовать, вопрос все же имеет значение: что может сделать одна команда другой командой?
(я полагаю, что я мог бы написать программу ac для запуска ruby1.9.1, вызвать исполняемый ruby и поместить его в мой bin, но это кажется менее хорошей идеей)
С самого начала вам не нужно было писать приложение C - простая запись в стиле bash сделала бы вас хорошо.
Я думаю, что самое чистое возможное решение будет включать в себя систему update-alternatives. Так, например, Ubuntu удается разделить различные виртуальные машины Java, установив их рядом друг с другом. Проблема в том, что вам нужно настроить его самостоятельно.
Я просто столкнулся с почтовым сообщением, которое, похоже, делает большую часть тяжелой работы для вас. Возможно, вам придется немного изменить номера версий, но, кроме того, вы должны получить эту идею.
Для потомков (в случае, если Google сужает URL-адрес или поток), сейчас я копирую в конец бизнеса но я не беру на себя ответственность за его запись.
If any of you are using Ubuntu this is a pretty nice way to manage multiple
ruby interpreters.
It has the advantage of managing the manpages, ri, and irb as "slaves", so
they change when a new interpreter is selected.
here's the code:
# become root
su
# make sure the packages are installed for 1.8 & 1.9
aptitude install -s ~n^ruby1.[89]$ ~n^irb1.[89]$ ~n^ri1.[89]
# install ruby1.8 & friends with priority 500
# so this will be the default "auto" choice
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.8 500 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.8.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.8 \
--slave /usr/bin/irb irb /usr/bin/irb1.8
# install ruby1.9 & friends with priority 400
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.9 400 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.9.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.9 \
--slave /usr/bin/irb irb /usr/bin/irb1.9
# choose your interpreter
# changes symlinks for /usr/bin/ruby ,
# /usr/bin/irb, /usr/bin/ri and man (1) ruby
update-alternatives --config ruby
for those with additional interpreters in say /usr/local/bin, other Debian
variants, or managing other tools, vary as required.
% man update-alternatives
hope wrapping didn't mangle it too much, and that someone finds this useful
...
--
cheers,
David Lee
С самого начала вам не нужно было писать приложение C - простая запись в стиле bash сделала бы вас хорошо.
Я думаю, что самое чистое возможное решение будет включать в себя систему update-alternatives. Так, например, Ubuntu удается разделить различные виртуальные машины Java, установив их рядом друг с другом. Проблема в том, что вам нужно настроить его самостоятельно.
Я просто столкнулся с почтовым сообщением, которое, похоже, делает большую часть тяжелой работы для вас. Возможно, вам придется немного изменить номера версий, но, кроме того, вы должны получить эту идею.
Для потомков (в случае, если Google сужает URL-адрес или поток), сейчас я копирую в конец бизнеса но я не беру на себя ответственность за его запись.
If any of you are using Ubuntu this is a pretty nice way to manage multiple
ruby interpreters.
It has the advantage of managing the manpages, ri, and irb as "slaves", so
they change when a new interpreter is selected.
here's the code:
# become root
su
# make sure the packages are installed for 1.8 & 1.9
aptitude install -s ~n^ruby1.[89]$ ~n^irb1.[89]$ ~n^ri1.[89]
# install ruby1.8 & friends with priority 500
# so this will be the default "auto" choice
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.8 500 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.8.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.8 \
--slave /usr/bin/irb irb /usr/bin/irb1.8
# install ruby1.9 & friends with priority 400
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.9 400 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.9.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.9 \
--slave /usr/bin/irb irb /usr/bin/irb1.9
# choose your interpreter
# changes symlinks for /usr/bin/ruby ,
# /usr/bin/irb, /usr/bin/ri and man (1) ruby
update-alternatives --config ruby
for those with additional interpreters in say /usr/local/bin, other Debian
variants, or managing other tools, vary as required.
% man update-alternatives
hope wrapping didn't mangle it too much, and that someone finds this useful
...
--
cheers,
David Lee
С самого начала вам не нужно было писать приложение C - простая запись в стиле bash сделала бы вас хорошо.
Я думаю, что самое чистое возможное решение будет включать в себя систему update-alternatives. Так, например, Ubuntu удается разделить различные виртуальные машины Java, установив их рядом друг с другом. Проблема в том, что вам нужно настроить его самостоятельно.
Я просто столкнулся с почтовым сообщением, которое, похоже, делает большую часть тяжелой работы для вас. Возможно, вам придется немного изменить номера версий, но, кроме того, вы должны получить эту идею.
Для потомков (в случае, если Google сужает URL-адрес или поток), сейчас я копирую в конец бизнеса но я не беру на себя ответственность за его запись.
If any of you are using Ubuntu this is a pretty nice way to manage multiple
ruby interpreters.
It has the advantage of managing the manpages, ri, and irb as "slaves", so
they change when a new interpreter is selected.
here's the code:
# become root
su
# make sure the packages are installed for 1.8 & 1.9
aptitude install -s ~n^ruby1.[89]$ ~n^irb1.[89]$ ~n^ri1.[89]
# install ruby1.8 & friends with priority 500
# so this will be the default "auto" choice
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.8 500 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.8.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.8 \
--slave /usr/bin/irb irb /usr/bin/irb1.8
# install ruby1.9 & friends with priority 400
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.9 400 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.9.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.9 \
--slave /usr/bin/irb irb /usr/bin/irb1.9
# choose your interpreter
# changes symlinks for /usr/bin/ruby ,
# /usr/bin/irb, /usr/bin/ri and man (1) ruby
update-alternatives --config ruby
for those with additional interpreters in say /usr/local/bin, other Debian
variants, or managing other tools, vary as required.
% man update-alternatives
hope wrapping didn't mangle it too much, and that someone finds this useful
...
--
cheers,
David Lee
С самого начала вам не нужно было писать приложение C - простая запись в стиле bash сделала бы вас хорошо.
Я думаю, что самое чистое возможное решение будет включать в себя систему update-alternatives. Так, например, Ubuntu удается разделить различные виртуальные машины Java, установив их рядом друг с другом. Проблема в том, что вам нужно настроить его самостоятельно.
Я просто столкнулся с почтовым сообщением, которое, похоже, делает большую часть тяжелой работы для вас. Возможно, вам придется немного изменить номера версий, но, кроме того, вы должны получить эту идею.
Для потомков (в случае, если Google сужает URL-адрес или поток), сейчас я копирую в конец бизнеса но я не беру на себя ответственность за его запись.
If any of you are using Ubuntu this is a pretty nice way to manage multiple
ruby interpreters.
It has the advantage of managing the manpages, ri, and irb as "slaves", so
they change when a new interpreter is selected.
here's the code:
# become root
su
# make sure the packages are installed for 1.8 & 1.9
aptitude install -s ~n^ruby1.[89]$ ~n^irb1.[89]$ ~n^ri1.[89]
# install ruby1.8 & friends with priority 500
# so this will be the default "auto" choice
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.8 500 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.8.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.8 \
--slave /usr/bin/irb irb /usr/bin/irb1.8
# install ruby1.9 & friends with priority 400
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.9 400 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.9.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.9 \
--slave /usr/bin/irb irb /usr/bin/irb1.9
# choose your interpreter
# changes symlinks for /usr/bin/ruby ,
# /usr/bin/irb, /usr/bin/ri and man (1) ruby
update-alternatives --config ruby
for those with additional interpreters in say /usr/local/bin, other Debian
variants, or managing other tools, vary as required.
% man update-alternatives
hope wrapping didn't mangle it too much, and that someone finds this useful
...
--
cheers,
David Lee
С самого начала вам не нужно было писать приложение C - простая запись в стиле bash сделала бы вас хорошо.
Я думаю, что самое чистое возможное решение будет включать в себя систему update-alternatives. Так, например, Ubuntu удается разделить различные виртуальные машины Java, установив их рядом друг с другом. Проблема в том, что вам нужно настроить его самостоятельно.
Я просто столкнулся с почтовым сообщением, которое, похоже, делает большую часть тяжелой работы для вас. Возможно, вам придется немного изменить номера версий, но, кроме того, вы должны получить эту идею.
Для потомков (в случае, если Google сужает URL-адрес или поток), сейчас я копирую в конец бизнеса но я не беру на себя ответственность за его запись.
If any of you are using Ubuntu this is a pretty nice way to manage multiple
ruby interpreters.
It has the advantage of managing the manpages, ri, and irb as "slaves", so
they change when a new interpreter is selected.
here's the code:
# become root
su
# make sure the packages are installed for 1.8 & 1.9
aptitude install -s ~n^ruby1.[89]$ ~n^irb1.[89]$ ~n^ri1.[89]
# install ruby1.8 & friends with priority 500
# so this will be the default "auto" choice
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.8 500 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.8.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.8 \
--slave /usr/bin/irb irb /usr/bin/irb1.8
# install ruby1.9 & friends with priority 400
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.9 400 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.9.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.9 \
--slave /usr/bin/irb irb /usr/bin/irb1.9
# choose your interpreter
# changes symlinks for /usr/bin/ruby ,
# /usr/bin/irb, /usr/bin/ri and man (1) ruby
update-alternatives --config ruby
for those with additional interpreters in say /usr/local/bin, other Debian
variants, or managing other tools, vary as required.
% man update-alternatives
hope wrapping didn't mangle it too much, and that someone finds this useful
...
--
cheers,
David Lee
С самого начала вам не нужно было писать приложение C - простая запись в стиле bash сделала бы вас хорошо.
Я думаю, что самое чистое возможное решение будет включать в себя систему update-alternatives. Так, например, Ubuntu удается разделить различные виртуальные машины Java, установив их рядом друг с другом. Проблема в том, что вам нужно настроить его самостоятельно.
Я просто столкнулся с почтовым сообщением, которое, похоже, делает большую часть тяжелой работы для вас. Возможно, вам придется немного изменить номера версий, но, кроме того, вы должны получить эту идею.
Для потомков (в случае, если Google сужает URL-адрес или поток), сейчас я копирую в конец бизнеса но я не беру на себя ответственность за его запись.
If any of you are using Ubuntu this is a pretty nice way to manage multiple
ruby interpreters.
It has the advantage of managing the manpages, ri, and irb as "slaves", so
they change when a new interpreter is selected.
here's the code:
# become root
su
# make sure the packages are installed for 1.8 & 1.9
aptitude install -s ~n^ruby1.[89]$ ~n^irb1.[89]$ ~n^ri1.[89]
# install ruby1.8 & friends with priority 500
# so this will be the default "auto" choice
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.8 500 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.8.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.8 \
--slave /usr/bin/irb irb /usr/bin/irb1.8
# install ruby1.9 & friends with priority 400
update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby1.9 400 \
--slave /usr/share/man/man1/ruby.1.gz ruby.1.gz \
/usr/share/man/man1/ruby.1.9.gz \
--slave /usr/bin/ri ri /usr/bin/ri1.9 \
--slave /usr/bin/irb irb /usr/bin/irb1.9
# choose your interpreter
# changes symlinks for /usr/bin/ruby ,
# /usr/bin/irb, /usr/bin/ri and man (1) ruby
update-alternatives --config ruby
for those with additional interpreters in say /usr/local/bin, other Debian
variants, or managing other tools, vary as required.
% man update-alternatives
hope wrapping didn't mangle it too much, and that someone finds this useful
...
--
cheers,
David Lee
Вот еще один вопрос по тому же духу: как вы удалите Ruby 1.8.7 и установите Ruby 1.9.2?
Это решение для запуска следующей команды:
sudo update-alternatives --config ruby
Затем вы получите этот вывод:
There are 2 choices for the alternative ruby (providing /usr/bin/ruby).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/ruby1.8 50 auto mode
1 /usr/bin/ruby1.8 50 manual mode
2 /usr/bin/ruby1.9.1 10 manual mode
Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
Вот еще один вопрос по тому же духу: как вы удалите Ruby 1.8.7 и установите Ruby 1.9.2?
Это решение для запуска следующей команды:
sudo update-alternatives --config ruby
Затем вы получите этот вывод:
There are 2 choices for the alternative ruby (providing /usr/bin/ruby).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/ruby1.8 50 auto mode
1 /usr/bin/ruby1.8 50 manual mode
2 /usr/bin/ruby1.9.1 10 manual mode
Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
Вот еще один вопрос по тому же духу: как вы удалите Ruby 1.8.7 и установите Ruby 1.9.2?
Это решение для запуска следующей команды:
sudo update-alternatives --config ruby
Затем вы получите этот вывод:
There are 2 choices for the alternative ruby (providing /usr/bin/ruby).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/ruby1.8 50 auto mode
1 /usr/bin/ruby1.8 50 manual mode
2 /usr/bin/ruby1.9.1 10 manual mode
Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
Вот еще один вопрос по тому же духу: как вы удалите Ruby 1.8.7 и установите Ruby 1.9.2?
Это решение для запуска следующей команды:
sudo update-alternatives --config ruby
Затем вы получите этот вывод:
There are 2 choices for the alternative ruby (providing /usr/bin/ruby).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/ruby1.8 50 auto mode
1 /usr/bin/ruby1.8 50 manual mode
2 /usr/bin/ruby1.9.1 10 manual mode
Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
Вот еще один вопрос по тому же духу: как вы удалите Ruby 1.8.7 и установите Ruby 1.9.2?
Это решение для запуска следующей команды:
sudo update-alternatives --config ruby
Затем вы получите этот вывод:
There are 2 choices for the alternative ruby (providing /usr/bin/ruby).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/ruby1.8 50 auto mode
1 /usr/bin/ruby1.8 50 manual mode
2 /usr/bin/ruby1.9.1 10 manual mode
Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
Вот еще один вопрос по тому же духу: как вы удалите Ruby 1.8.7 и установите Ruby 1.9.2?
Это решение для запуска следующей команды:
sudo update-alternatives --config ruby
Затем вы получите этот вывод:
There are 2 choices for the alternative ruby (providing /usr/bin/ruby).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/ruby1.8 50 auto mode
1 /usr/bin/ruby1.8 50 manual mode
2 /usr/bin/ruby1.9.1 10 manual mode
Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]