详解用Node.js写一个简单的命令行工具


Posted in Javascript onMarch 01, 2018

本文介绍了用Node.js写一个简单的命令行工具,分享给大家,具体如下:

操作系统需要为Linux

1. 目标

  1. 在命令行输入自己写的命令,完成目标任务
  2. 命令行要求全局有效
  3. 命令行要求可以删除
  4. 命令行作用,生成一个文件,显示当前的日期

2. 代码部分

  1. 新建一个文件,命名为sherryFile
  2. 文件sherryFile的内容

介绍: 生成一个文件,文件内容为当前日期和创建者

#! /usr/bin/env node
console.log('command start');
const fs = require('fs');
let date = new Date().toLocaleDateString();
let data = date + '\n\t' + '——create By karuru';
fs.writeFile('./date.txt', data, 'utf8', (err) => {
  if (err) {
    console.log('sherryFile command wrong', err);
    return false;
  }
  console.log('writeFile success!!!!');
  console.log('command end');
});
  1. 给该文件赋予执行权限chmod 755 sherryFile
  2. 在该文件所在的文件路径下输入./sherryFile
  3. 如果输出以下内容,表示命令执行成功

command start
writeFile success!!!!
command end

在该文件目录下,会有一个新的date.txt文件生成,内容如下

2/28/2018
    create By karuru

将命令修改为全局有效

ln sherryFile /usr/local/bin/sherryFile

删除命令

rm /usr/local/bin/sherryFile

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript实例教程(19) 使用HoTMetal(7)
Dec 23 Javascript
js类的静态属性和实例属性的理解
Oct 01 Javascript
javascript 全等号运算符使用说明
May 31 Javascript
jquery 操作DOM的基本用法分享
Apr 05 Javascript
jquery 表单验证之通过 class验证表单不为空
Nov 02 Javascript
jQuery插件datatables使用教程
Apr 21 Javascript
基于vue.js快速搭建图书管理平台
Oct 29 Javascript
JavaScript创建对象方式总结【工厂模式、构造函数模式、原型模式等】
Dec 19 Javascript
详解用Webpack与Babel配置ES6开发环境
Mar 12 Javascript
文章或博客自动生成章节目录索引(支持三级)的实现代码
May 10 Javascript
关于Vue Router的10条高级技巧总结
May 06 Vue.js
vue中使用mockjs配置和使用方式
Apr 06 Vue.js
vue-prop父组件向子组件进行传值的方法
Mar 01 #Javascript
Node.js 利用cheerio制作简单的网页爬虫示例
Mar 01 #Javascript
vue父组件向子组件传递多个数据的实例
Mar 01 #Javascript
React Native 自定义下拉刷新上拉加载的列表的示例
Mar 01 #Javascript
解决vue中无法动态修改jqgrid组件 url地址的问题
Mar 01 #Javascript
vue 实现类似淘宝星级评分的示例
Mar 01 #Javascript
vue-star评星组件开发实例
Mar 01 #Javascript
You might like
用在PHP里的JS打印函数
2006/10/09 PHP
php error_log 函数的使用
2009/04/13 PHP
第4章 数据处理-php字符串的处理-郑阿奇(续)
2011/07/04 PHP
PHP调用Linux的命令行执行文件压缩命令
2013/01/27 PHP
smarty中英文多编码字符截取乱码问题解决方法
2014/10/28 PHP
php随机显示指定文件夹下图片的方法
2015/07/13 PHP
PHP中header用法小结
2016/05/23 PHP
PHP面向对象五大原则之单一职责原则(SRP)详解
2018/04/04 PHP
php支付宝系列之电脑网站支付
2018/05/30 PHP
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
JavaScript Math.round() 方法
2015/12/18 Javascript
jQuery设置单选按钮radio选中/不可用的实例代码
2016/06/24 Javascript
利用JQuery直接调用asp.net后台的简单方法
2016/10/27 Javascript
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
Vue2.0父组件与子组件之间的事件发射与接收实例代码
2017/09/19 Javascript
用React实现一个完整的TodoList的示例代码
2017/10/30 Javascript
js实现简单数字变动效果
2017/11/06 Javascript
vue实现模态框的通用写法推荐
2018/02/26 Javascript
微信小程序实践之动态控制组件的显示/隐藏功能
2018/07/18 Javascript
JavaScript惰性求值的一种实现方法示例
2019/01/11 Javascript
JS使用对象的defineProperty进行变量监控操作示例
2019/02/02 Javascript
Node.js中Koa2在控制台输出请求日志的方法示例
2019/05/02 Javascript
layui时间控件选择时间范围的实现方法
2019/09/28 Javascript
JavaScript相等运算符的九条规则示例详解
2019/10/20 Javascript
vue实现移动端图片上传功能
2019/12/23 Javascript
[02:28]PWL开团时刻DAY3——Ink Ice与DeMonsTer之间的勾心斗角
2020/11/03 DOTA
使用python实现生成用户信息
2017/03/20 Python
Python的高阶函数用法实例分析
2019/04/11 Python
Python 实现一行输入多个数字(用空格隔开)
2020/04/29 Python
大学生村官典型材料
2014/01/12 职场文书
公司委托书范本
2014/04/04 职场文书
民族精神月活动总结
2014/08/28 职场文书
党员转正意见怎么写
2015/06/03 职场文书
幼儿园毕业典礼园长致辞
2015/07/29 职场文书
解析Java中的static关键字
2021/06/14 Java/Android