Tôi cần, từ một tập lệnh bash, kiểm tra xem một số viên ngọc Ruby nhất định đã được cài đặt chưa.
Tôi nghĩ rằng tôi có thể làm một cái gì đó như
if ! gem list <name>; then do_stuff; fi
nhưng thử nghiệm trên dòng lệnh bằng cách sử dụng echo $?
cho thấy gem list <name>
trả về 0 bất kể tên đó có thực sự được tìm thấy hay không.
Điều này có nghĩa là tôi phải sử dụng grep để lọc đầu ra của danh sách đá quý, hoặc có cách nào tốt hơn để tôi có thể kiểm tra xem đá quý có được cài đặt không?
--version
, ví dụ :gem list -i compass --version 0.12.4
.