ฉันติดตั้งแพคเกจบางอย่างผ่านทางชง แต่ฉันไม่สามารถหาพวกเขาอยู่ที่ไหน
ฉันไม่สามารถเข้าถึงได้โดยพิมพ์hping
บนเทอร์มินัล
% brew install hping
(git)-[master]
Warning: hping-3.20051105 already installed
ฉันติดตั้งแพคเกจบางอย่างผ่านทางชง แต่ฉันไม่สามารถหาพวกเขาอยู่ที่ไหน
ฉันไม่สามารถเข้าถึงได้โดยพิมพ์hping
บนเทอร์มินัล
% brew install hping
(git)-[master]
Warning: hping-3.20051105 already installed
คำตอบ:
ใช้สิ่งต่อไปนี้เพื่อแสดงเส้นทางการติดตั้งของแพ็คเกจ:
brew info hping
ตัวอย่างผลลัพธ์:
pcre: stable 8.35 (bottled)
http://www.pcre.org/
/usr/local/Cellar/pcre/8.35 (146 files, 5.8M) *
Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/pcre.rb
==> Options
--universal
Build a universal binary
brew doctor
อาจช่วยให้คุณเข้าใจปัญหาเช่นกัน
echo "$(brew --cellar llvm)/$(brew list --versions llvm | tr ' ' '\n' | tail -1)/bin/clang"
brew --prefix hping
(จากคำตอบ @ capripot) อาจใช้เล่ห์เหลี่ยม
/ usr / local / Cellar เป็นตำแหน่งเริ่มต้นใน OS X คุณจะเห็นไดเรกทอรีย่อยที่นั่นสำหรับสูตรที่ติดตั้งทั้งหมดของคุณ ...
หากต้องการทราบว่าติดตั้งสูตรของคุณอยู่ที่ใด
brew --prefix hping
นอกจากนี้คุณยังสามารถเชื่อมโยงhping
ไบนารีของคุณโดยทำbrew unlink hping && brew link hping
บางทีคุณอาจจะยัง$PATH
ไม่ได้กำหนดชัดเจน รายการที่กำหนดโดยecho $PATH
มีผลลัพธ์ที่กำหนดโดยecho $(brew --prefix)'/bin:'$(brew --prefix)'/sbin'
? /usr/bin
เส้นทางนี้ควรจะไปสู่จุดเริ่มต้นของรายการที่จะจัดลำดับความสำคัญมากกว่าไบนารีของระบบแน่นอนก่อน
หากต้องการทำเช่นนั้นคุณสามารถเพิ่มได้ในตอนท้ายของ~/.zshrc
หรือ~/.bashrc
:
export PATH=$(brew --prefix)/bin:$(brew --prefix)/sbin:$PATH
ดังนั้นหลังจากเปิดเทอร์มินัลใหม่หรือทำsource ~/.zshrc
แล้วคุณจะสามารถสะท้อนเส้นทางที่ถูกต้องของคุณเป็น:
$ echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
brew --prefix <command>
เป็นสิ่งที่ฉันต้องการ
โดยปกติการติดตั้งแพคเกจเข้าhomebrew
/usr/local/bin
ดังนั้นคุณต้องตรวจสอบว่า PATH ของคุณมีไดเรกทอรีนั้นดังนี้:
echo $PATH
ลองใช้งานดู
brew doctor
เพื่อให้แน่ใจว่าการตั้งค่าของคุณถูกต้อง หาก/usr/local/bin
ไม่ได้อยู่ในเส้นทางของคุณคุณต้องแก้ไข~/.profile
และเพิ่มบรรทัดดังนี้:
export PATH=$PATH:/usr/local/bin
จากนั้นเริ่มต้น Terminal ใหม่ (เพื่ออ่านโปรไฟล์ล็อกอินของคุณอีกครั้ง) และลองอีกครั้ง
หากสิ่งที่ล้มเหลวจะต้องติดตั้งที่อื่น คุณสามารถค้นหาโดยเรียกใช้คำสั่งเช่นนี้:
sudo find / -name hping -type f
/usr/local/Cellar
ขณะที่ @PapaStanley ชี้ให้เห็น
ls -ld /usr/local/bin
มันดูเหมือนไดเรกทอรีปกติ?
ลองคำสั่งนี้
brew --cellar <FORMULA>
เช่น
brew --cellar hping
brew --prefix hping
อาจช่วยได้เช่นกัน
hping ต้องการสิทธิ์พิเศษในการรัน
คุณอาจต้องเพิ่ม / usr / local / sbin ใน PATH ของคุณ
เมื่อฉันวิ่งชงแพทย์:
Warning: Homebrew's sbin was not found in your PATH but you have installed
formulae that put executables in /usr/local/sbin.
Consider setting the PATH for example like so
echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.bash_profile
หากต้องการค้นหาไดเร็กทอรีการติดตั้งพื้นฐานสำหรับ Homebrew ให้ใช้หนึ่งในคำสั่งต่อไปนี้:
brew --prefix
brew --cellar
หลังส่งกลับเส้นทางของCellar
โฟลเดอร์ของคุณโดยเฉพาะ
ฉันขอแนะนำให้เพิ่มบรรทัดต่อไปนี้ใน~/.bash_profile
(หรือไฟล์การกำหนดค่าที่เทียบเท่าหากคุณใช้เชลล์ที่แตกต่างกัน):
export HOMEBREW_CASK_OPTS="--appdir=/Applications"
ฉันติดตั้งแพคเกจบางอย่างผ่านทางชง แต่ฉันไม่สามารถหาพวกเขาอยู่ที่ไหน
ดูเหมือนว่า homebrew ต้องมีสิ่งหนึ่งที่ชัดเจนกับสิ่งต่าง ๆ โชคดีที่การหลีกเลี่ยงการใช้งานเล็กน้อยbrew --prefix
สามารถทำให้นี่เป็นเกมง่ายๆสำหรับผู้ที่ต้องการค้นหาเส้นทางสำหรับยูทิลิตี pkg-config เช่น
PKG_CONFIG_PATH=`brew --prefix hping`/lib/pkgconfig/ pkg-config --cflags hping
(ยกเว้นสิ่งนี้จะไม่ทำงานต่อไปเนื่องจากดูเหมือนว่า hping ไม่ได้มาพร้อมกับ hping.pc .. แม้ว่าในกรณีที่ผู้ดูแลแพคเกจใส่ไฟล์. pc เคล็ดลับนี้มีประโยชน์)
หากใครบางคนกำลังมองหาเส้นทางที่แท้จริงของแพ็คเกจ
ในกรณีของฉันbrew --cellar opencv3
ให้/usr/local/Cellar/opencv
แต่find /usr/local/Cellar/ -type d -name "*opencv*" -maxdepth 1
ให้
/usr/local/Cellar//opencv3
(ซึ่งเป็น/usr/local/Cellar/opencv3
จริง)
ส่วนหัว:
/usr/local/Cellar/opencv3/3.4.1_1/include/
libs:
/usr/local/Cellar/opencv3/3.4.1_1/lib/
ฉันสามารถหาตัวเลือก CLI โดยตรงbrew
ได้เพื่อรับเส้นทางแบบเต็มไปยังสูตรที่ติดตั้งอยู่ในปัจจุบัน แต่วิธีนี้จะใช้ได้ตราบใดที่คุณใช้ bash:
echo $(brew --cellar asciidoctor)/$(brew info --json asciidoctor | jq -r '.[0].installed[0].version')
# /usr/local/Cellar/asciidoctor/1.5.8
/usr/local/Cellar/hping/3.20051105/sbin/hping