जवाबों:
ठीक है, मैंने जितना सोचा था, यह उससे भी आसान था (ठीक है, वास्तव में नहीं है, चलो जितना आसान होना चाहिए) कहो:
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)
gem list -ra --pre passenger
(-ra == --remote --all)
zsh
अधिक उन्नत पार्सिंग हैं और इस तरह से दिए गए रेगेक्स को पकड़ सकते हैं। अधिक सुरक्षित होने के लिए (यदि स्क्रिप्ट या README में उस तरह से sth डालते हैं) को एक तार में रखना है ताकि हम सुनिश्चित करें कि हम इसे 1-1, अर्थात gem list '^rhc$'
आदि पास करते हैं
zsh
आपकी मदद के लिए यह +1 किया!
--prerelease
बीटा वर्जन देखने के लिए उपयोग करें
RubyGem की गाइड के अनुसार आपको search
कीवर्ड का उपयोग करना चाहिए । तो कमांड हो सकती है:
gem search rhc --all
यदि आप सटीक नाम का उपयोग करना चाहते हैं:
gem search ^rhc$ --all
यदि आप प्रीलेरेज़ संस्करणों के उपयोग को शामिल करना चाहते हैं --pre
gem search ^rhc$ --pre
और यदि आप zsh
जोड़ उद्धरण का उपयोग कर रहे हैं :
gem search '^rhc$' --all
--prerelease
बीटा वर्जन देखने के लिए उपयोग करें
@ Eyalev के उत्तर का विस्तार करने के लिए, यदि आप प्रति पंक्ति एक संस्करण की सूची चाहते हैं, तो यहां एक-लाइनर है:
gem search '^rspec$' --all \
| grep -o '\((.*)\)$' \
| tr -d '() ' \
| tr ',' "\n" \
| sort
0.0.10
0.1.0
0.1.1
# etc.
इसे थोड़ा और पुन: प्रयोग करने योग्य बनाने के लिए, आप कुछ कार्य लिख सकते हैं (मेरे सीमित बास कौशल को क्षमा करें):
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.
प्रयत्न:
gem list [STRING] [options]
उदाहरण के लिए:
gem list rhc -r
या कोशिश करें:
gem list -r rhc
( दस्तावेज़ीकरण, और प्रदान किया गया उदाहरण एक दूसरे के विपरीत प्रतीत होते हैं - दोनों को आज़माएं )
प्रलेखन देखें:
gem list ^rhc$
"--remote" और "--all" झंडे को खोज सकते हैं और उनके लिए जोड़ सकते हैंgem list ^rhc$ -ra