Homebrew: แสดงรายการเวอร์ชันที่มีพร้อมรูปแบบสูตรใหม่ @ เวอร์ชัน


115

เมื่อไม่นานมานี้ Homebrew ได้เลิกใช้งานhomebrew/versionsในการทำให้เวอร์ชันพร้อมใช้งานhomebrew/coreผ่านformula@versionรูปแบบใหม่ ยกตัวอย่างเช่น (ตามคำตอบนี้ ) brew install postgresql@9.5ที่คุณสามารถทำได้

แน่นอนว่าวิธีนี้ใช้ไม่ได้กับเวอร์ชันที่กำหนดเอง ตัวอย่างเช่นinstall cocoapods@1.1.1ปรากฏ "ข้อผิดพลาด: ไม่พบสูตรในก๊อก"

ภายใต้วิธีการเดิมฉันสามารถเรียกใช้brew versions <formula>เพื่อดูเวอร์ชันที่ใช้ได้ ฉันจะแสดงรายการเวอร์ชันที่มีอยู่ตอนนี้ได้อย่างไร?

คำตอบ:


134

คุณสามารถค้นหาเวอร์ชันโดยใช้brew searchไฟล์.

ตัวอย่างเช่น:

$ brew search postgresql
postgresql ✔      postgresql@9.4     postgresql@9.5

40
นั่นคือสิ่งที่ฉันกลัว ... โปรแกรมฉันต้องการเวอร์ชันเก่าเพื่อให้มีเวอร์ชันปัจจุบันเท่านั้น อืม.
Phlippie Bosman

วิธีนี้ค่อนข้างไร้ประโยชน์สำหรับแพ็คเกจเช่นr; จะพบทุกแพ็คเกจที่มี "r" อยู่ในชื่อ
Ken Williams

17

และในกรณีที่คุณต้องการค้นหาเวอร์ชันเฉพาะที่ใช้โดยสูตรหลังจากพบโดยใช้searchแล้วคุณสามารถใช้info:

brew info <formula>
# or for a cask:
brew cask info <formula>

เช่นbrew info postgresql@10หรือbrew cask info vlc

และหากคุณไม่พบถังรุ่นเก่าที่เป็นที่นิยมคุณอาจสามารถรับได้ผ่านทางhomebrew-cask-versionsซึ่งติดตั้งได้ด้วยbrew tap homebrew/cask-versions.


13

นี่เป็นคำถามเก่า แต่ฉันพบวิธีที่ "ดีกว่า" (สำหรับฉัน) ในการทำสิ่งนี้:

brew info --json PACKAGE_NAME | jq -r '.[].versioned_formulae[]'

ตัวอย่างเช่นในกรณีของแพ็คเกจnodeสิ่งนี้จะพิมพ์:

$ brew info --json node | jq -r '.[].versioned_formulae[]'
node@10
node@12
node@8

คุณจะต้องjqติดตั้งโปรแกรมเพื่อเจาะลึกลงไปใน JSON ที่เหมาะสม ( brew install jq)

เนื่องจากข้างต้นเป็นเพียงการเขียน / จดจำฉันขอแนะนำให้ตั้งนามแฝงหรือฟังก์ชันในเชลล์ที่คุณชื่นชอบ


นี่มันอัศจรรย์มาก!
Phlippie Bosman
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.