yargs模块 https://www.npmjs.com/package/yargs https://github.com/yargs/yargs/blob/HEAD/docs/api.md

const { argv } = require('yargs');
console.log(argv); >cui 123 ajanuw -p=./
{ _: [ 123, 'ajanuw' ],
help: false,
version: false,
p: './',
'$0': 'AppData\\Roaming\\npm\\node_modules\\sh\\bin\\create-user-info.js' }

脚本文件 /bin/main.js

#!/usr/bin/env node

console.log(123);

package.json

{
"name": "sh",
"version": "1.0.0",
"description": "",
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"bin": {
"r32": "./bin/main.js"
}
}

在脚本根目录执行 npm i -g ./ 或则 npm link测试完后删除npm unlink

r32 执行命令就会出现 123

这是一个返回 随机数的命令

#!/usr/bin/env node

const {
argv
} = require('yargs')
.config({
s: 'c0'
})
.option('all', {
describe: '查看返回字符串类型'
})
.alias('v', 'version')
.help('help') if (argv.version) {
console.log('1.0.0');
return;
} if (argv.all) {
console.log(`
--s=c0 默认返回大小写字母和数字 [c1 全大写] [c2 全小写] [c3 全小写]
`);
return;
} let len = argv._[0] && typeof + argv._[0] === "number" ?
+argv._[0] :
32 const c0 = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; // 大小写字母和数字
const c1 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; // 大写
const c2 = 'abcdefghijklmnopqrstuvwxyz'; // 小写
const c3 = '123456789'; // 小写 let c = argv.s; // 默认大小写数字 switch (c) {
case 'c1':
c = c1;
break;
case 'c2':
c = c2;
break;
case 'c3':
c = c3;
break;
default:
c = c0;
break;
} const random = (a, b) => Math.floor(Math.random() * (b - a + 1) + a); function randomString32(len, c) {
// 返回随机字符串
const c_len = c.length;
return new Array(len)
.fill()
.reduce((acc) => acc += c[random(0, c_len - 1)], '')
} const str = randomString32(len, c);
const exec = require('child_process').exec ;
exec(`echo ${str} | clip`, (error, stdout, stderr)=>{
if(error) console.log('复制到粘贴板失败!');
})
console.log(str);
>node .\bin\main.js 6 --s=c3
842773

node.js 设置脚本命令的更多相关文章

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

    之前使用过一些全局安装的NPM包,安装完之后,可以通过其提供的命令,完成一些任务.比如Fis3,可以通过fis3 server start 开启fis的静态文件服务,通过fis3 release开启文 ...

  2. node.js cmd常用命令

    cmd1.c:如果我们想访问c盘,那么我们需要在命令行中输入c:就行了 2.cd..cd..就可以返回上层目录 3.cd mmcd mm即可访问mm文件夹 4.dir如果想查看该文件夹下有哪些文件,则 ...

  3. 微软开放技术发布针对 Mac 和 Linux 的更新版 Azure Node.JS SDK 和命令行工具

    发布于 2013-12-04 作者 Eduard Koller 这次为我们使用Linux 的朋友带来了更多关于部署云上虚拟机的消息.今天,微软开放技术有限公司 (MS Open Tech),想与大家分 ...

  4. 使用node.js编写脚本将JSON数据转换为SQL语句

    安装依赖模块 当node.js脚本在运行的时候,需要很多支持模块,这些模块存储在node_modules文件夹中.该脚本在执行过程中需要使用到fs.string-format两个支持模块,作用分别是: ...

  5. 安装Nginx并为node.js设置反向代理

    最近看了反向代理和正向代理的东西,想到自己的node.js服务器是运行在3333端口的,也没有为他设置反向代理,node.js项目的一些静态文件是完全可以部署在Nginx上,以减少对node.js的请 ...

  6. node.js 设置静态文件托管

    1.在app.js文件中设置静态文件托管 /*应用程序入口文件*/ /*加载express模块*/ var express = require('express'); /*加载模板处理模块*/ var ...

  7. node.js执行shell命令

    nodejs功能强大且多样,不只是可以实现 服务器端 与 客户端 的实时通讯,另一个功能是用来执行shell命令 首先,引入子进程模块 var process = require('child_pro ...

  8. node.js的npm命令常见错误及解决方案

    使用npm命令进行模块安装的时候场出现各种错误,本文总结我所遇到的各种错误,并提供解决方案.(大部分内容为网上收集) 首先使用淘宝 NPM 镜像 大家都知道国内直接使用 npm 的官方镜像是非常慢的, ...

  9. node.js 设置 淘宝 镜像

    npm config set registry "https://registry.npm.taobao.org" npm info underscore (如果上面配置正确这个命 ...

随机推荐

  1. iOS开发-NSDate获取当前时区时间

    NSDate Date默认显示的是格林尼治所在地的标准时间(GMT),转换为中国时区需要加上八个小时,针对与这个情况你可以直接在获取时间之后加上八个小时,也可以转换到当前时区,都很简单,代码参考如下: ...

  2. task_payment_byonlinedown

    CREATE DEFINER=`root`@`%` PROCEDURE `vir`.`task_payment_byonlinedown`()begin declare _mobile varchar ...

  3. WPF 实现阴影效果

    一.WPF最常见的一个阴影效果的类是DropShadowEffect.它有几种比较有用的属性比如:Color设置颜色Direction设置投影的方向ShadowDepth设置投影距纹理下方的距离Opa ...

  4. ubuntu 12.04启用休眠

    x86-64 与EM64区别 EM64T全称是Extended Memory 64 Technology(64位内存技术扩展技术.Intel声称“EM64T技术是Intel对IA32平台一系列技术革新 ...

  5. CSS3 选择器 基本选择器介绍

    CSS是一种用于屏幕上渲染html,xml等一种语言,CSS主要是在相应的元素中应用样式,来渲染相对应用的元素,那么这样我们选择相应的元素就很重要了,如何选择对应的元素,此时就需要我们所说的选择器.选 ...

  6. 基于Tcp协议的简单Socket通信实例(JAVA)

    好久没写博客了,前段时间忙于做项目,耽误了些时间,今天开始继续写起~ 今天来讲下关于Socket通信的简单应用,关于什么是Socket以及一些网络编程的基础,这里就不提了,只记录最简单易懂实用的东西. ...

  7. Atitit 项目文档规范化与必备文档与推荐文档列表

    Atitit 项目文档规范化与必备文档与推荐文档列表 ===========比较重要的必备文档========== 项目组名单通讯录( 包括项目组,客户沟通人等 需求文档 原型ui文档 开发计划表 项 ...

  8. Google file system

    读完了Google file system论文的中文版,记录一下总结,懒得打字,直接上草图:

  9. 【css】css 中文字体 unicode 对照表

    css 中文字体可以用 unicode 格式来表示,比如“宋体”可以用 \5B8B\4F53 来表示.具体参考下表: 中文名 英文名 unicode 宋体 SimSun \5B8B\4F53 黑体 S ...

  10. C++ 智能指针三

    /* 智能指针shared_ptr注意点 */ #include <iostream> #include <string> #include <memory> // ...