Exécutables globaux NPM/Node.js

Avez-vous déjà rencontré une bibliothèque qui, lors de l'installation globale, offre une gamme de commandes globales ?

C'est la eslintbibliothèque populaire. Si vous l'installez globalement, vous obtiendrez une commande globale appelée eslint.

Voyons comment faire quelque chose comme ça.

Donc, j'écris ce morceau de code dans un fichier appelé hello.js.

#!/usr/bin/env node

console.log('Hey dear!');

Maintenant, si nous essayons d'exécuter notre hello.jsfichier, nous obtiendrons ce type d'erreur.

$ ./hello.js
-bash: ./hello.js: Permission denied

Pour cela, nous avons besoin d'utiliser chmodpour le faire fonctionner.

chmod +x hello.js

Maintenant, nous pouvons le faire fonctionner comme ça !

$ ./hello.js
Hey dear!

Au fait, nous pouvons le simplifier davantage en le renommant en quelque chose comme hello.
Le type de fichier n'est pas important dans ce cas, car nous avons écrit quelque chose de magique dans la première ligne du fichier.

Je n'essaierai pas ça, car on voulait quelque chose qui se joue avec npm i -g, n'est-ce pas ?

Alors continuons à cuisiner…

Nous pouvons vérifier eslint'sla base de code et voir comment ils ont fait cela. Nous avons juste besoin de vérifier leur package.jsondossier.

https://github.com/eslint/eslint/blob/main/package.json

Comme vous pouvez le voir ici, ils ont utilisé cet binobjet pour configurer leur commande exécutable globale.

Maintenant je vais faire pareil.

Je vais créer un projet Node.js. Et configurez l' hello.jsexécutable comme dans eslint'sl'exemple.

mkdir sayhi-nairi && cd sayhi-nairi
npm init --yes

{
  // ...
  "bin" : {
    "hello" : "./hello.js"
  }
}

npm publish

https://www.npmjs.com/sayhi-nairi

En utilisant whichla commande, vous pouvez voir où npmest stocké cet exécutable.

Pour plus d'informations, reportez-vous à la documentation NPM et expérimentez différentes fonctionnalités pour découvrir ce que vous pouvez réaliser d'autre.

Merci d'avoir pris le temps de lire cet article. N'hésitez pas à me contacter pour toute question ou commentaire que vous pourriez avoir. @nairihar

Comment mettre à l'échelle Node.js Socket Server avec Nginx et Redis Comment utiliser Puppeteer dans Heroku Les ressources gratuites Heroku sont mortes, utilisons Render

Suggested posts

Recherche d'informations sur les noms de domaine

Un extrait de Small, Sharp Software Tools par Brian P. Hogan

Recherche d'informations sur les noms de domaine

Lorsque vous faites une demande à facebook.com, votre ordinateur recherche le nom de domaine pour traduire ce nom de domaine en une adresse IP afin que votre ordinateur puisse établir cette connexion.

Le mot D et le mot L dans UI Design. La langue compte. Ne soyez pas raciste.

Le mot D et le mot L dans UI Design. La langue compte. Ne soyez pas raciste.

Notre langue est un outil puissant qui peut façonner nos pensées, nos attitudes et nos actions. Même des termes apparemment inoffensifs peuvent perpétuer des préjugés et des stéréotypes nuisibles.

Related posts

La performance solo de la fille aux cheveux roux

En mission de Hayden, Katie se filme en train de se masturber.

La performance solo de la fille aux cheveux roux

Il était minuit passé lorsque Hayden a ramené Katie à son dortoir universitaire après leur soirée ensemble. Elle avait un cours tôt le matin et n'avait plus de vêtements de rechange après être restée avec lui la nuit précédente.

3 façons éprouvées d'améliorer vos compétences en écriture

Les avantages de l'écriture et les stratégies pour vous aider à le faire

3 façons éprouvées d'améliorer vos compétences en écriture

En 2022, avec la sortie de GPT-3, la compétence en écriture semble devenir moins importante. Avec l'IA, les personnes ayant une mauvaise écriture peuvent également générer du personnel de qualité.

Journal ouvert

Journal ouvert

Journal ouvert : une image par jour. J'ai toujours été fasciné par les histoires.

Rassembler OSINT pour la chasse aux menaces

Rassembler OSINT pour la chasse aux menaces

Salut les cyber-amateurs ! Bienvenue à nouveau dans la série OSINT pour la chasse aux menaces. Dans le premier article, je vous ai donné un aperçu d'OSINT et de son importance dans la chasse aux menaces.