ฉันกำลังติดตั้ง grunt, node, npm, bower และ grunt-cli บน windows7
คำแนะนำบอกว่าฉันควรรันคำสั่งติดตั้งด้วยแฟล็ก -g สำหรับโกลบอล
ฉันจะตรวจสอบได้อย่างไรว่าฉันใช้แฟล็ก -g เมื่อฉันติดตั้ง จะใช้เวลาในการถอนการติดตั้งและติดตั้งใหม่
ฉันกำลังติดตั้ง grunt, node, npm, bower และ grunt-cli บน windows7
คำแนะนำบอกว่าฉันควรรันคำสั่งติดตั้งด้วยแฟล็ก -g สำหรับโกลบอล
ฉันจะตรวจสอบได้อย่างไรว่าฉันใช้แฟล็ก -g เมื่อฉันติดตั้ง จะใช้เวลาในการถอนการติดตั้งและติดตั้งใหม่
คำตอบ:
ใช้list
คำสั่งกับ-g
แฟล็กเพื่อดูแพ็กเกจทั้งหมดที่ติดตั้งแบบโกลบอล:
npm list -g
ในการตรวจสอบว่ามีการติดตั้งแพ็คเกจเฉพาะทั่วโลกหรือไม่คุณสามารถระบุชื่อแพ็คเกจ ( grunt
ในกรณีนี้) ตามที่เห็นด้านล่าง:
npm list -g grunt
หรือคุณสามารถใช้grep
เพื่อกรองชื่อแพ็คเกจ:
npm list -g | grep grunt
npm list --depth 0 --global tern
ตรวจสอบว่าเทินถูกติดตั้งทั่วโลกหรือไม่npm install -g tern
grep
ดูเหมือนว่าเป็นวิธีการแก้ปัญหาที่น่าเชื่อถืออย่างเป็นธรรมให้ความเห็นเกี่ยวกับการออกจาก NPM ด้วยข้อผิดพลาดเนื่องจากการพึ่งพาที่ไม่
npm list --depth 1 --global packagename > /dev/null 2>&1
จากนั้นคุณสามารถตรวจสอบสถานะการออกเพื่อดูว่ามีการติดตั้งหรือไม่ ขอขอบคุณอดัม Monsen
--depth 1
! นั่นคือสิ่งที่ฉันกำลังมองหา อันที่จริงฉันกำลังใช้ตอนนี้npm list --depth 0 -g
$?
ส่งกลับมา1
ให้ฉันเสมอแม้ว่าจะติดตั้งแพ็คเกจหรือไม่ได้ติดตั้งก็ตาม
ในการตรวจสอบว่ามีการติดตั้งแพ็กเกจเฉพาะที่เรียกใช้ทั่วโลกหรือไม่:
npm list -g [package-name]
ลองมา "grunt" เป็นตัวอย่าง หากติดตั้งทั่วโลกคุณควรเห็นสิ่งนี้
C:\data\tryout\test1>npm list -g grunt
C:\Users\xxxxxxx\AppData\Roaming\npm
└── grunt@0.4.5
หากไม่ได้ติดตั้งไว้ทั่วโลกคุณควรเห็นสิ่งนี้
C:\data\tryout\test1>npm list -g grunt
C:\Users\xxxxxxx\AppData\Roaming\npm
└── (empty)
ในการตรวจสอบว่ามีการติดตั้งแพ็กเกจเฉพาะไว้ในเครื่องหรือไม่คุณสามารถดำเนินการคำสั่งเดียวกับข้างต้น แต่ไม่มีพารามิเตอร์ -g
แหล่งที่มา: วิธีการตรวจสอบว่าแพคเกจ NPM ถูกติดตั้งทั่วโลกหรือท้องถิ่น
คุณสามารถแสดงรายการแพ็กเกจโกลบอลทั้งหมดได้ด้วยคำสั่ง:
npm ls -g
หรือตรวจสอบแพ็คเกจเฉพาะด้วย:
npm ls -g [package-name]
ตัวอย่างเช่น: npm ls -g @angular/cli
ใน Windows เราใช้คำสั่งต่อไปนี้เพื่อค้นหาว่ามีการติดตั้งแพ็คเกจหรือไม่ โปรดดูภาพเพื่อดูรายละเอียด
npm list -g | find "create"
จากแพ็คเกจของคุณด้วย sindresorhus/is-installed-globally
https://github.com/sindresorhus/is-installed-globally
การใช้งาน:
const isInstalledGlobally = require('is-installed-globally');
// With `npm install your-package`
console.log(isInstalledGlobally);
//=> false
// With `npm install --global your-package`
console.log(isInstalledGlobally);
//=> true
ฉันพบว่ามีประโยชน์เมื่อฉันต้องแจกจ่ายไฟล์ที่สร้างไว้ล่วงหน้าด้วยแพ็คเกจของฉัน: จะเผยแพร่แพคเกจ npm พร้อมไฟล์แจกจ่ายอย่างไร กับแพคเกจนี้ผมสามารถตรวจสอบว่าการติดตั้งในท้องถิ่นหรือระดับโลกและจากนั้นใช้เส้นทางญาติสำหรับการติดตั้งในท้องถิ่นตามที่แสดงไว้ที่นี่
--depth
ตรวจสอบให้ลองใช้ ตัวอย่างเช่นnpm list --depth 1 --global csats-mturk > /dev/null 2>&1
. นี่เป็นตัวอย่างที่มีรายละเอียดมากขึ้น