Skip to content

import Bunx from "/snippets/cli/bunx.mdx";

NOTE

`bunx` هو اسم مستعار لـ `bun x`. سيتم تثبيت `bunx` CLI تلقائيًا عند تثبيت `bun`.

استخدم bunx للتثبيت التلقائي وتشغيل الحزم من npm. إنه مكافئ Bun لـ npx أو yarn dlx.

bash
bunx cowsay "Hello world!"

NOTE

⚡️ **السرعة** — مع أوقات بدء التشغيل السريعة لـ Bun، فإن `bunx` [أسرع بحوالي 100 مرة](https://twitter.com/jarredsumner/status/1606163655527059458) من `npx` للحزم المثبتة محليًا.

يمكن للحزم الإعلان عن ملفات تنفيذية في حقل "bin" في package.json الخاص بها. تُعرف هذه باسم الملفات التنفيذية للحزمة أو ثنائيات الحزمة.

json
{
  // ... حقول أخرى
  "name": "my-cli",
  "bin": {
    "my-cli": "dist/index.js"
  }
}

هذه الملفات التنفيذية عادةً ما تكون ملفات JavaScript عادية مميزة بـ سطر shebang للإشارة إلى البرنامج الذي يجب استخدامه لتنفيذها. يشير الملف التالي إلى أنه يجب تنفيذه باستخدام node.

js
#!/usr/bin/env node

console.log("Hello world!");

يمكن تشغيل هذه الملفات التنفيذية باستخدام bunx،

bash
bunx my-cli

كما هو الحال مع npx، سيتحقق bunx أولاً من وجود حزمة مثبتة محليًا، ثم يعود إلى التثبيت التلقائي للحزمة من npm. سيتم تخزين الحزم المثبتة في ذاكرة التخزين المؤقت العامة لـ Bun للاستخدام المستقبلي.

المعلمات والعلامات

لتمرير علامات وأوامر إضافية إلى الملف التنفيذي، ضعها بعد اسم الملف التنفيذي.

bash
bunx my-cli --foo bar

Shebangs

بشكل افتراضي، يحترم Bun سطور shebang. إذا تم تمييز ملف تنفيذي بـ #!/usr/bin/env node، فسيقوم Bun بتشغيل عملية node لتنفيذ الملف. ومع ذلك، في بعض الحالات قد يكون من المرغوب تشغيل الملفات التنفيذية باستخدام وقت تشغيل Bun، حتى إذا أشار الملف إلى خلاف ذلك. للقيام بذلك، قم بتضمين العلامة --bun.

bash
bunx --bun my-cli

يجب أن تظهر العلامة --bun قبل اسم الملف التنفيذي. العلامات التي تظهر بعد الاسم يتم تمريرها إلى الملف التنفيذي.

bash
bunx --bun my-cli # جيد
bunx my-cli --bun # سيء

علامة الحزمة

--package <pkg> أو -p <pkg> - تشغيل ملف ثنائي من حزمة محددة. مفيد عندما يختلف اسم الملف الثنائي عن اسم الحزمة:

bash
bunx -p renovate renovate-config-validator
bunx --package @angular/cli ng

لفرض استخدام bun دائمًا مع نص برمجي، استخدم shebang.

js
#!/usr/bin/env bun

Bun بواسطة www.bunjs.com.cn تحرير