นามแฝงของ nodejs เป็นโหนดบน 14.04


12

ฉันติดตั้งnodejsพร้อมกับapt-getเปิด14.04

เมื่อฉันทำ nodejs -v

v0.10.25

และเมื่อฉันทำ node -v

node : command not found.

ดังนั้นผมจึงต้องการที่จะนามแฝงของnodejsการnode

ฉันสอดสายเข้าไป ~/.bashrc

alias node=nodejs

ตอนนี้ฉันสามารถเข้าถึงnodejsด้วยnodeเทอร์มินัล

แต่ในโครงการของฉันฉันใช้gruntซึ่ง fires ผ่านnodemon gruntfile.jsตอนนี้nodemonพยายามเรียกใช้nodeแทนnodejs

node : command not foundดังนั้นอีกครั้งที่ฉันได้รับปัญหาเดียวกัน

ดังนั้นนามแฝงจะไม่ทำงานกับเชลล์ที่ไม่ใช่การโต้ตอบ

ฉันควรสร้างนามแฝงเพื่อวัตถุประสงค์เฉพาะนี้และแก้ไขปัญหาได้อย่างไร


โปรดเพิ่มนามแฝงเดียวกันใน/etc/profileและrestart; หลังจากเปลี่ยนrcไฟล์หรือไฟล์โพรไฟล์คุณต้องทำการส่งไฟล์
PradyJord

@Jord ฉันแก้ไข / etc / profile ด้วย alias เดียวกันและรีสตาร์ท แต่ปัญหายังคงเหมือนเดิม
codeofnode

หลายปีที่ผ่านมา แต่ ... นามแฝงจะไม่ทำงาน (ปกติ) ในเชลล์ที่ไม่มีการโต้ตอบ: stackoverflow.com/a/1615973/7222080ทำตามคำแนะนำ symlink ในคำตอบ
John N

คำตอบ:


11

nodeดีอยากรู้อยากเห็นฉันมี มันเป็น symlink ของระบบทางเลือกและฉันก็ค่อนข้างแน่ใจว่าฉันได้รับมาอย่างไร (ในแบบที่คุณไม่ต้องการ) ไม่นานหลังจากที่ฉันติดตั้งดังนั้นฉันอาจติดตามโพสต์นี้หรืออย่างใดอย่างหนึ่ง ... ใครจะไปรู้!

คุณสามารถเขียนนามแฝงทุบตีเล็กน้อยแต่จะใช้ได้กับผู้ใช้ทีละรายเท่านั้น มันอาจจะเหมาะสมกว่าที่จะเพิ่มมันเหมือน symlink ทั่วโลก ฉันไม่แน่ใจว่ามีค่าใด ๆ ที่จะเข้าสู่ระบบทางเลือกดังนั้นเราจึงสามารถลองทำสิ่งต่อ/usr/local/binไปนี้ได้

sudo ln -s /usr/local/bin/nodejs /usr/bin/node

แก้ไข: โพสต์นั้นฉันพูดคุยเกี่ยวกับการเชื่อมโยงกลับไปหนึ่งของเราซึ่งอาจเกี่ยวข้อง มันแสดงให้เห็นการติดตั้งnodejs-legacyเป็นวิธีข้างหน้า


1
ค้นหาตำแหน่งของ nodejs whereis nodejsจากนั้นทำln -s /usr/bin/nodejs ~/bin/node(ใช่ไม่มีsudo) แทนที่/usr/bin/nodejsด้วยพา ธ nodejs ของคุณคือ
srcspider

3
การย้อนกลับไม่ใช่ทางไปข้างหน้า
srcspider


0

เนื่องจากไดเร็กทอรี bin อยู่ในPATH, คุณสามารถสร้าง symlink ชื่อ node ใน~/binไดเร็กทอรีที่ลิงก์ไปยังไบนารีจริง

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