Ich habe heute die Frage gestellt bekommen, wie man alle installierten Ruby Gems auf einmal updaten kann.
Ich muss zugeben: Ich selbst habe noch nie alle auf einen Schlag angehoben, aber trotzdem ist es eine lösbare Aufgabe:
sudo gem update `gem list | cut -d ' ' -f 1`

Hierbei ist zu beachten, dass der Befehlt alle auf dem System installierten Gems auf den letzten verfügbaren Stand anhebt! Wer (wie ich) mit RVM arbeitet, der muss das ganze ggf. ohne “sudo” machen.

Also:
gem update `gem list | cut -d ' ' -f 1`

Ich möchte mir ja nicht wieder meinen Apple Server verschiessen… Apple hat seit Lion ja viel mit Ruby gemacht und die ganzen Dinge können recht schnell in Schief-Lage kommen.

Wenn das System schon etwas länger keinen Update mehr auf die installierten Gems erfahren hat, dann sieht das ungefähr so aus:
Gems updated: activesupport, activemodel, journey, actionpack, actionmailer, activerecord, activeresource, addressable, builder, bundler, chunky_png, haml, i18n, json_pure, mime-types, multi_json, railties, rails, rake, rake-compiler, rspec-core, rspec-expectations, rspec-mocks, rspec, rspec-rails, sass, sprockets, thor, uglifier, yard

Wenn RVM installiert ist und es davon was neues gibt ggf. so:

Gems updated: activesupport, activemodel, actionpack, actionmailer, activerecord, activeresource, builder, bundler, i18n, json, mime-types, pg, railties, rails, rubygems-bundler, rvm, sprockets, thor

Sollten sich aus einer neuen Gem Version auch neue Abhängigkeiten ergeben, dann steigt der Updater ggf. aus:
Missing `redcarpet` gem for Markdown formatting. Install it with `gem install redcarpet`

Dann einfach noch mal starten.

So funktioniert es auf Linux, Unix und Mac OS X! Bei Windows wird das ganze scheitern! Windows hat ja kein “cut” ;-)
Hier muss man dann entweder was mit Powershell machen, oder eben auf Cygwin, oder ähnliches, ausweichen.