ตกลงขอโทษถ้านี่เป็นสิ่งที่โง่ แต่ฉันหมดความคิด
ประตู:ย่อหน้า/usr/local/bin
ไป$PATH
ปัญหา: $PATH
จะไม่ทำสิ่งที่ฉันต้องการหรือคาดหวัง
ฉันมาที่นี่ได้อย่างไร:ฉันต้องการเริ่มเรียนรู้ที่จะเขียนโปรแกรมดังนั้นฉันจึงรู้สึกสบายใจเมื่อต้องอยู่ภายใต้กระโปรงหน้ารถ แต่ไม่มีประสบการณ์มากมาย ฉันติดตั้งfish
เชลล์ (เพราะเป็นมิตร!) โดยใช้homebrew
และตั้งเป็นเชลล์เริ่มต้น (ใต้system prefs>users & groups>advanced
) เมื่อถึงจุดหนึ่งฉันวิ่งbrew doctor
ไปดูว่าการติดตั้งของฉันเป็นโคเชอร์ทั้งหมดหรือไม่และแนะนำให้ฉันย้าย/usr/local/bin
ไปที่ด้านหน้า$PATH
เพื่อให้ฉันสามารถใช้การติดตั้งgit
แทนการคัดลอกระบบได้ ไม่เป็นไร - แต่ระหว่างpath_helper
และfish
มีบางสิ่งเกิดขึ้นกับสิ่ง$PATH
ที่อยู่นอกเหนือการควบคุมของฉันและฉันไม่สามารถหาเส้นทางที่ถูกต้องในวิธีที่ถูกต้อง
สิ่งแวดล้อม: OSX 10.8.2 อัพเกรดจาก 10.7ish ด้วยxcode
และติดตั้ง devtools บวกx11
, homebrew
และfish
ข้อมูลเพิ่มเติม:ฉันได้ตั้งเริ่มต้นเปลือกกลับของผู้ใช้ไปbash
และพยายามที่ความหลากหลายของเปลือกหอยผ่านterminal.app
- bash
, ,fish
sh
ฉันย้าย/usr/local/bin
ไปที่ด้านบนสุด/etc/paths
แต่ก็ไม่ได้เปลี่ยนแปลงอะไรเลย ฉันดูผ่านconfig.fish
ไฟล์ต่าง ๆและแสดงความคิดเห็นสิ่งที่อาจยุ่งกับ $ PATH ไม่ได้ช่วย ฉันมีไฟล์ต่อไปนี้ใน/etc/paths.d/
:
./10-homebrew
มี /usr/local/bin
./20-fish
มี /usr/local/Cellar/fish/1.23.1/bin
./40-XQuartz
มี /opt/X11/bin
ฉันเพิ่มset +x
ของฉันprofile
และเมื่อฉันเริ่มterminal.app
ฉันได้รับ:
Last login: Mon Oct 1 13:31:06 on ttys000
+ '[' -x /usr/libexec/path_helper ']'
+ eval '/usr/libexec/path_helper -s'
++ /usr/libexec/path_helper -s PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/Cellar/fish/1.23.1/bin:/opt/X11/bin";
export PATH;
+ '[' /bin/bash '!=' no ']'
+ '[' -r /etc/bashrc ']'
+ . /etc/bashrc
++ '[' -z '\s-\v\$ ' ']'
++ PS1='\h:\W \u\$ '
++ shopt -s checkwinsize
++ '[' Apple_Terminal == Apple_Terminal ']'
++ '[' -z '' ']'
++ PROMPT_COMMAND='update_terminal_cwd; '
++ update_terminal_cwd
++ local 'SEARCH= '
++ local REPLACE=%20
++ local PWD_URL=file://Chriss-iMac.local/Users/c4
++ printf '\e]7;%s\a' file://Chriss-iMac.local/Users/c4
Chriss-iMac:~ c4$
ดังนั้นดูเหมือนว่า path_helper วิ่ง แต่แล้ววิ่งมุ้งฉันecho $PATH
/usr/bin:/bin:/usr/sbin:/sbin
ดังนั้นดูเหมือนว่าpath_helper
จะไม่ได้ทำในสิ่งที่ควรจะเป็นอีกต่อไปใช่ไหม
ฉันแน่ใจว่ามีบางพฤติกรรมที่ชัดเจนที่นี่ที่ฉันไม่เข้าใจหรือฉัน borked บางสิ่งบางอย่างในขณะที่พยายามที่จะแก้ไข กรุณาช่วย!
fish
โดยการสร้าง~/.config/fish/config.fish
ด้วยset PATH /usr/local/bin $PATH
แต่ฉันยังคงมีปัญหาที่path_helper
เห็นได้ชัดว่าไม่ทำงานอย่างที่ควรจะเป็นและ$PATH
ไม่สมบูรณ์ ยังมีปัญหาที่แตกต่างกัน$PATH
สำหรับสคริปต์, แอพที่เริ่มต้นจาก GUI, เป็นต้น