首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Node.js编写命令行工具

闲来无事,在浏览 GitHub 时无意中看到了 commander.js 这个工具,16k 的 start,就看了看 commander 的官方文档。...来到天气 API,发现天气查询 API 的城市字段并不是城市名字,而是城市编码,在使用命令行查询时,显然我们输的是城市名字。那该怎么办呢?...准备好这些后,就可以编写命令行工具了! 编写命令行工具 在正式编写之前,说一下 commander 的用法。...precess.argv 是 node.js 中的一个属性,当你在控制台输入参数时,这个属性就会接收到你输入到的内容,该属性会返回一个数组: // 01.jsconsole.log(process.argv...package.json) "weather": "bin/index.js" }} 打开终端在项目目录,输入命令:npm link。

3.3K10
您找到你想要的搜索结果了吗?
是的
没有找到

node.js如何制作命令行工具(一)

最近有一个需求,需要写一个类似vue-cli的NPM包,通过命令行操作实现项目初始配置,所以就查看了相关资料,学习了一下如何使用node来生成自己的命令。...编写命令行 命令的目标:在当前目录下开启一个静态文件服务,端口号为8085 1.创建目录 构成命令的基础是需要一个命令文件web.js和package.json配置文件,执行以下命令: $ mkdir...其中process为node进程中的全局变量,process.argv为一数组,数组内存储着命令行的各个部分,argv[0]为node的安装路径,argv[1]为主模块文件路劲,剩下为子命令或参数,如下...调试命令行 (1)采用install方法 进入npm包目录下,执行全局install,根据package.json中bin的配置,为全局命令创建软连。 # sudo npm install ....本文是通过原生node.js来开发命令工具,而vue-cli是采用commander.js来简化命令工具开发,关于commander.js的使用方法,将在下一篇文章中介绍。

1.7K90

玩转 Commander.js —— 你也是命令行大师

导语 | 最近做团队底层构建工具架构升级和命令行交互打了不少交道,再加上在研究 Vue-CLI 的源码,觉得 Commander.js 作为 Node.js 下这么优秀的命令行交互工具,值得总结一下,文章主体内容搬运了...默认情况下,选项在命令行中的顺序不固定,一个选项可以在其他参数之前或之后指定。 3.1....如果在命令行中不指定具体的选项及参数,则会被定义为undefined。...可以为一个 boolean 类型的选项指定一个默认的布尔值,在命令行里可以重写它的值。...不支持重载所有的帮助信息,只能实现和内建的帮助一同展示,如下图是 Commander.js 配合 CommandLineUsage 的效果,可以看到 Commander.js 内置的帮助信息在 CommandLineUsgae

1.6K20

玩转 Commander.js —— 你也是命令行大师

最近做团队底层构建工具架构升级和命令行交互打了不少交道,再加上在研究 Vue-CLI 的源码,觉得 Commander.js 作为 Node.js 下这么优秀的命令行交互工具,值得总结一下,文章主体内容搬运了...默认情况下,选项在命令行中的顺序不固定,一个选项可以在其他参数之前或之后指定。 3.1....如果在命令行中不指定具体的选项及参数,则会被定义为undefined。...可以为一个 boolean 类型的选项指定一个默认的布尔值,在命令行里可以重写它的值。...不支持重载所有的帮助信息,只能实现和内建的帮助一同展示,如下图是 Commander.js 配合 CommandLineUsage 的效果,可以看到 Commander.js 内置的帮助信息在 CommandLineUsgae

5K20

如何从Node.js中的命令行读取输入

本文翻译自How to read input from the command line in Node.js readline内置模块 您是否正在使用Node.js中开发一个小的CLI工具,并希望能够提示用户从命令行输入输入...Node.js正是为此目的提供了readline模块。 它提供了一个接口,用于从可读流(例如process.stdin)中一次读取一行数据。...第三方模块-prompt readline模块是一个低级Node.js软件包,对于复杂的用例,您可能会认为它太复杂了。...向对象添加属性 提示模块提供了另一个名为addProperties()的便捷方法,可通过从命令行添加属性数据来扩展现有对象: const prompt = require('prompt'); //...如果您打算在Node.js中构建可靠的CLI工具,则prompt可能是一个很好的选择。

8.1K10

使用Vue.js编写命令行界面,前端开发CLI的利器

前言 大家好,我是webfansplz.继将 Vue 渲染到嵌入式液晶屏后,今天要跟大家分享的是如何将Vue渲染到命令行工具 :).关于命令行工具,大家应该都比较熟悉了,比如vue-cli、Vite等....Temir 介绍 Temir,一个用Vue组件来编写命令行界面应用的工具.开发者只需要使用Vue就可以编写命令行应用,不需要任何额外的学习成本....green"> {{ counter }} tests passed 组件 Temir提供了一些基础组件帮助开发者编写与扩展命令行工具...Yoga Vue提供了跑在命令行界面的接口,那我们就还缺少一个布局引擎就能把Vue 跑在命令行工具了.Temir使用了Yoga,一款Flexbox布局引擎.使用你在构建浏览器应用时使用过的类似CSS的属性

76240

用Vue.js写一个命令行贪吃蛇游戏

前言 大家好,我是webfansplz.本文要分享的是如何使用Vue.js实现一个命令行贪吃蛇游戏(temir-snake-game).对于贪吃蛇游戏想必大家都不陌生了,使用Vue.js实现一个Web...版的贪吃蛇游戏似乎没什么难度,那如果是命令行版的呢?...将Vue渲染到命令行界面 使用Vue.js实现命令行贪吃蛇游戏,首先意味着我们要将Vue.js渲染到命令行界面,才能开始具体的游戏实现.我们经常用Vue.js来编写Web应用,但是Vue的能力却不仅仅局限于此...关于Temir就不在这里进行详细的介绍了,有兴趣的童鞋可以上Github查看介绍或者看使用Vue.js编写命令行界面这篇文章....贪吃蛇游戏实现 有了Temir,我们就具备了使用Vue.js编写命令行游戏的条件,接下来我们来看看游戏的具体实现: 实现拆解 首先我们对游戏实现进行一下简单的拆解,从元素+逻辑的维度来看,可以简单分为几部分

1.1K20

Node.js 项目开发中使用 npm install 命令行安装依赖的技术分析

笔者近两年来一直从事 Angular 应用开发,最近在工作中遇到一些本地执行 npm install 命令行失败的情况,因此花了一些时间来了解这个命令行背后的一些工作细节,将所学到的东西写成文章,分享给大家...当我们在 Node.js 项目中运行 npm install 命令时,这个命令会根据 package.json 文件中的依赖项,下载并安装必要的模块。但这个过程并不简单,它涉及到诸多的步骤和细节。...package.json 文件如下所示:{ "name": "my-node-project", "version": "1.0.0", "description": "A sample Node.js...project", "main": "index.js", "scripts": { "start": "node index.js" }, "dependencies": { "...4.17.1", "lodash": "^4.17.21" }, "devDependencies": { "mocha": "^9.0.0" }, "keywords": ["Node.js

76620

命令行参数

'abc' ] process.argv的用法是第一个是node文件, 第二个是脚本文件, 第三个是参数 npm scripts(npm脚本)发送命令行参数 什么是npm scripts npm..."lint": "jshint *.js" "lint": "jshint **/*.js" 上面代码中,*表示任意文件名,**表示任意一层子目录。..."test": "tap test/\*.js" 传参 将命令行参数发送到npm脚本: npm run [command] [-- ] 注意必要的--,需要将参数传递到npm命令本身,并将其传递给脚本...webpack.DefinePlugin({ 'domain': process.argv[2] }), } 参考 npm scripts 使用指南[1] 如何向npm脚本发送命令行参数...编译环境中的几种传参方法[3] 参考资料 [1]npm scripts 使用指南: http://www.ruanyifeng.com/blog/2016/10/npm_scripts.html [2]如何向npm脚本发送命令行参数

1.9K20
领券