fnm
)ตัวจัดการเวอร์ชัน Node.js ที่รวดเร็วและง่ายดาย สร้างขึ้นใน Rust
- รองรับข้ามแพลตฟอร์ม (macOS, Windows, Linux)
ไฟล์เดียว ติดตั้งง่าย เริ่มต้นใช้งานได้ทันที
สร้างขึ้นโดยคำนึงถึงความเร็ว
ใช้งานได้กับไฟล์ .node-version
และ .nvmrc
สำหรับ bash
, zsh
และ fish
shells จะมีสคริปต์การติดตั้งอัตโนมัติ
ขั้นแรกตรวจสอบให้แน่ใจว่าได้ติดตั้ง curl
และ unzip
บนระบบปฏิบัติการของคุณแล้ว จากนั้นดำเนินการ:
curl -fsSL https://fnm.vercel.app/install | bash
บน macOS มันง่ายพอ ๆ กับ brew upgrade fnm
บนระบบปฏิบัติการอื่น การอัพเกรด fnm
แทบจะเหมือนกับการติดตั้งเลย เพื่อป้องกันการทำซ้ำในไฟล์กำหนดค่าเชลล์ของคุณ ให้เพิ่ม --skip-shell
เพื่อติดตั้งคำสั่ง
--install-dir
ตั้งค่าไดเร็กทอรีที่กำหนดเองสำหรับ fnm ที่จะติดตั้ง ค่าเริ่มต้นคือ $XDG_DATA_HOME/fnm
(หากไม่ได้กำหนด $XDG_DATA_HOME
ก็จะกลับไปอยู่ที่ $HOME/.local/share/fnm
บน linux และ $HOME/Library/Application Support/fnm
บน MacOS)
--skip-shell
ข้ามการผนวกตัวโหลดเฉพาะเชลล์ต่อท้ายไฟล์กำหนดค่าเชลล์ โดยอิงตามเชลล์ผู้ใช้ปัจจุบัน ซึ่งกำหนดใน $SHELL
เช่น Bash $HOME/.bashrc
$HOME/.zshrc
สำหรับ Zsh สำหรับปลา - $HOME/.config/fish/conf.d/fnm.fish
--force-install
การติดตั้ง macOS โดยใช้สคริปต์การติดตั้งนั้นเลิกใช้แล้วและใช้สูตร Homebrew แทน แต่จะบังคับให้สคริปต์ติดตั้งโดยใช้สูตรดังกล่าวต่อไป
ตัวอย่าง:
curl -fsSL https://fnm.vercel.app/install | bash -s -- --install-dir " ./.fnm " --skip-shell
brew install fnm
จากนั้นตั้งค่าเชลล์ของคุณสำหรับ fnm
winget install Schniz.fnm
scoop install fnm
จากนั้นตั้งค่าเชลล์ของคุณสำหรับ fnm
choco install fnm
จากนั้นตั้งค่าเชลล์ของคุณสำหรับ fnm
cargo install fnm
จากนั้นตั้งค่าเชลล์ของคุณสำหรับ fnm
PATH
หากต้องการลบ fnm (?) เพียงลบโฟลเดอร์ .fnm
ในโฮมไดเร็กตอรี่ของคุณ คุณควรแก้ไขการกำหนดค่าเชลล์ของคุณเพื่อลบการอ้างอิงถึง fnm (เช่น อ่านการตั้งค่าเชลล์แล้วทำตรงกันข้าม)
fnm จัดส่งความสำเร็จด้วยไบนารี่:
fnm completions --shell < SHELL >
โดยที่ <SHELL>
สามารถเป็นหนึ่งในเชลล์ที่รองรับ:
bash
zsh
fish
powershell
โปรดปฏิบัติตามคำแนะนำเชลล์ของคุณเพื่อติดตั้ง
จำเป็นต้องตั้งค่าตัวแปรสภาพแวดล้อมก่อนจึงจะสามารถเริ่มใช้ fnm ได้ ซึ่งทำได้โดยการประเมินเอาต์พุตของ fnm env
บันทึก
ตรวจสอบส่วนการกำหนดค่าเพื่อเปิดใช้งานคุณสมบัติที่แนะนำเป็นอย่างยิ่ง เช่น การสลับเวอร์ชันอัตโนมัติ
การเพิ่ม .node-version
ให้กับโปรเจ็กต์ของคุณนั้นง่ายดายเพียง:
$ node --version
v14.18.3
$ node --version > .node-version
ดูคำแนะนำต่อไปนี้สำหรับเชลล์ที่คุณใช้:
เพิ่มสิ่งต่อไปนี้ในโปรไฟล์ .bashrc
ของคุณ:
eval " $( fnm env --use-on-cd --shell bash ) "
เพิ่มสิ่งต่อไปนี้ในโปรไฟล์ .zshrc
ของคุณ:
eval " $( fnm env --use-on-cd --shell zsh ) "
สร้าง ~/.config/fish/conf.d/fnm.fish
และเพิ่มบรรทัดนี้:
fnm env --use-on-cd --shell fish | source
เพิ่มสิ่งต่อไปนี้ที่ส่วนท้ายของไฟล์โปรไฟล์ของคุณ:
fnm env -- use-on - cd -- shell powershell | Out-String | Invoke-Expression
~/.config/powershell/Microsoft.PowerShell_profile.ps1
notepad $profile
รองรับ fnm เช่นกันแต่ไม่ได้ครอบคลุมทั้งหมด คุณสามารถตั้งค่าสคริปต์เริ่มต้นสำหรับ cmd.exe หรือ Windows Terminal และต่อท้ายบรรทัดต่อไปนี้:
@ echo off
:: for /F will launch a new instance of cmd so we create a guard to prevent an infnite loop
if not defined FNM_AUTORUN_GUARD (
set " FNM_AUTORUN_GUARD = AutorunGuard "
FOR /f " tokens=* " %%z IN ('fnm env --use-on-cd') DO CALL %%z
)
การใช้งานจะคล้ายกับการติดตั้ง WinCMD ปกติมาก นอกเหนือจากการปรับแต่งเล็กน้อยเพื่อให้สามารถเรียกจากสคริปต์เริ่มต้น cmder ได้ ตัวอย่าง จะถือว่า ตัวแปรสภาพแวดล้อม CMDER_ROOT
ถูก ตั้งค่า เป็น ไดเร็กทอรีราก ของการติดตั้ง Cmder ของคุณ จากนั้นคุณสามารถทำสิ่งนี้:
:: %CMDER_ROOT%binfnm_init.cmd
@ echo off
FOR /f " tokens=* " %%z IN ('fnm env --use-on-cd') DO CALL %%z
:: %CMDER_ROOT%configuser_profile.cmd
call " %CMDER_ROOT% binfnm_init.cmd "
คุณสามารถแทนที่ %CMDER_ROOT%
ด้วยเส้นทางที่สะดวกอื่น ๆ ได้เช่นกัน
ดูตัวเลือกการกำหนดค่าที่มีอยู่สำหรับเอกสารการกำหนดค่าเพิ่มเติม
ดูคำสั่งที่มีสำหรับเอกสารการใช้งานเพิ่มเติม
ประชาสัมพันธ์ยินดีต้อนรับ ?
# Install Rust
git clone https://github.com/Schniz/fnm.git
cd fnm/
cargo build
cargo run -- --help # Will behave like `fnm --help`
cargo test