เป้าหมายของฉันคือเพื่อให้แน่ใจว่า หลาม อ้างถึง หลาม3 ในเทอร์มินัล mac ของฉัน สิ่งที่ฉันได้ลองไปแล้วคือความพยายามสองครั้งต่อไปนี้
1. การเพิ่มนามแฝงใน .zshrc
นามแฝง python=python3
หลังจากการจัดหาของฉันอีกครั้ง .zshrc ไฟล์นี้อนุญาตให้ฉันพิมพ์ หลาม --version และรับ python3
สิ่งนี้ใช้ไม่ได้กับสคริปต์ตามที่ระบุ #!/usr/bin/env หลาม และเพิกเฉยต่อนามแฝงของฉันโดยสิ้นเชิง
2. เพิ่ม symlink จาก /usr/local/bin/python ถึง /usr/bin/python3
นี่คือตอนที่มันแปลก นี่คือผลลัพธ์ของคำสั่งบางส่วน
หลาม --version -> ไพธอน 2.7
ซึ่งหลาม -> หลาม /usr/local/bin/python.python
/usr/local/bin/python --version -> ไพธอน 2.7
ls -l /usr/local/bin/python -> /usr/local/bin/python -> /usr/bin/python3.dll
/usr/bin/python3 --version -> หลาม 3.8
เกิดอะไรขึ้นที่นี่? เหตุใด symlink จึงถูกต้อง แต่ python รุ่นที่ไม่ถูกต้องยังคงแสดงอยู่เมื่อใช้งาน
ฉันพบคำถามที่คล้ายกันในแอปเปิ้ลเก่า แต่คำตอบไม่ได้ระบุถึงความแปลกประหลาดของ symlink และไม่ได้แก้ปัญหา
ฉันอยากจะเข้าใจว่าทำไมสิ่งนี้จึงเกิดขึ้น และค้นหาวิธีแก้ไขหรือวิธีที่เหมาะสมในการทำให้เวอร์ชันไพธอนหลักของฉันเป็นไพธอน 3
ขอบคุณ!