Подтвердить что ты не робот

Как перечислить все версии драгоценных камней, доступные на удаленном сайте?

Я пытаюсь найти все удаленные версии определенного драгоценного камня.

Я попытался использовать:

gem list rhc --remote

Но это показывает:

*** REMOTE GEMS ***
rhc (0.84.15)
rhcp (0.2.18)
rhcp_shell (0.2.12)

Любые идеи?

4b9b3361

Ответ 1

Ну, это было легче, чем я думал (ну, на самом деле, пусть говорят так же просто, как и должно быть):

gem list rhc --remote --all

Что возвращает:

*** REMOTE GEMS ***
rhc (0.84.15, 0.84.13, 0.83.9, 0.82.18, 0.81.14, 0.80.5, 0.79.5, 0.77.8, 0.75.9, 0.74.6, 0.74.5, 0.73.14, 0.72.29, 0.71.2, 0.69.6, 0.69.3, 0.68.5)
rhcp (0.2.18, 0.2.17, 0.2.16, 0.2.15, 0.2.14, 0.1.9, 0.1.8, 0.1.7, 0.1.6, 0.1.5, 0.1.4, 0.1.3, 0.1.2)
rhcp_shell (0.2.12, 0.2.11, 0.0.9, 0.0.7, 0.0.6, 0.0.5, 0.0.4, 0.0.3, 0.0.2, 0.0.1)

Ответ 2

В соответствии с Руководством RubyGem вы должны использовать ключевое слово search. Таким образом, команда может быть:

gem search rhc --all

Если вы хотите, чтобы точное имя использовалось:

gem search ^rhc$ --all

Если вы хотите включить предварительные версии, используйте --pre

gem search ^rhc$ --pre

И если вы используете zsh добавить кавычки:

gem search '^rhc$' --all

Ответ 3

Чтобы расширить @eyalev ответ, если вы хотите, чтобы список одной версии на строку, здесь однострочный:

gem search '^rspec$' --all \
  | grep -o '\((.*)\)$' \
  | tr -d '() ' \
  | tr ',' "\n" \ 
  | sort
0.0.10
0.1.0
0.1.1
# etc.

Чтобы сделать это немного более пригодным для повторного использования, вы можете написать некоторые функции (помилуй мои ограниченные навыки bash):

function extract_gem_versions() {   
  echo "$1" \
    | grep -o '\((.*)\)$' \
    | tr -d '() ' \
    | tr ',' "\n"; 
}

function gem_versions() { 
  local gem_name="$1"; 
  local pattern="^${gem_name}$";  
  local vers_str="$(gem search ${pattern} --all)";  
  extract_gem_versions "$vers_str";  
}

gem_versions rspec | sort
0.0.10
0.1.0
0.1.1
# etc.

Ответ 4

Try:

gem list [STRING] [options]

Например:

gem list rhc -r

Или попробуйте:

gem list -r rhc

(документация и предоставленный пример кажутся противоречащими друг другу - попробуйте оба)


См. документацию:

http://docs.rubygems.org/read/chapter/10#page34