Jawaban:
Ya, itu lebih mudah dari yang saya kira (well, tidak juga, katakan semudah yang seharusnya):
gem list rhc --remote --all
Yang mengembalikan:
*** 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)
gem list -ra --pre passenger(-ra == --remote --all)
zshmemiliki penguraian lebih maju dan bisa menangkap regex yang diberikan dengan cara ini. Agar lebih aman (jika menempatkan sth seperti itu dalam skrip atau README) adalah dengan meletakkannya di string sehingga kami yakin kami lulus 1-1, yaitu gem list '^rhc$'dll.
zshlakukan ini +1 untuk bantuan Anda!
--prereleaseuntuk melihat versi beta
Menurut Panduan RubyGem Anda harus menggunakan searchkata kunci. Jadi perintahnya bisa:
gem search rhc --all
Jika Anda ingin menggunakan nama yang tepat:
gem search ^rhc$ --all
Jika Anda ingin menyertakan versi prerelease gunakan --pre
gem search ^rhc$ --pre
Dan jika Anda menggunakan zshadd quotes:
gem search '^rhc$' --all
--prereleaseuntuk melihat versi beta
Untuk memperluas jawaban @ eyalev, jika Anda ingin daftar satu versi per baris, berikut ini adalah satu-liner:
gem search '^rspec$' --all \
| grep -o '\((.*)\)$' \
| tr -d '() ' \
| tr ',' "\n" \
| sort
0.0.10
0.1.0
0.1.1
# etc.
Untuk membuatnya sedikit lebih dapat digunakan kembali, Anda dapat menulis beberapa fungsi (maafkan kemampuan bash saya yang terbatas):
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.
Mencoba:
gem list [STRING] [options]
Sebagai contoh:
gem list rhc -r
Atau coba:
gem list -r rhc
( dokumentasi, dan contoh yang diberikan tampaknya saling bertentangan - cobalah keduanya )
Lihat dokumentasi:
gem list ^rhc$dan bendera "--remote" dan "--all" dapat disingkat dan digabungkan untukgem list ^rhc$ -ra