网站首页 > 基础教程 正文
Cash是一种纯粹由ES6(Javascript)实现的跨平台的Unix shell,它可以在windows下使用,曾经受超过200次严格全面的单元测试。
介绍
Cash的github地址在这里,你可以联想下Cygwin,不过Cash还具有别的特性:
1.非本地编译
2.没有麻烦的DLL文件
3.任何终端可用
4.只有Cygwin约15分之一的大小
Cash其实有特殊的意义,它将“>”标志换成了“$”,也就是货币符号,代表着“问既有答”的理念。
> cash
$
当然,Cash看起来其实跟bash挺像,其实也确实有关系。
想要使用它吗?你需要做的是:
> npm install cash -g
> cash
$
现在我们试试”中西结合”,把Windows命令和Unix命令混合使用:
$ ipconfig | grep IPv4 | sort
IPv4 Address. . . . . . . . . . . :10.10.40.50
IPv4 Address. . . . . . . . . . . :192.168.100.11
$
但如果你想单独开Cash,你可以设置其为全局生效:
> npm install cash-global -g
> ls –lah
当然,若你只想要部分命令,你可以:
> npm install cash-ls -g
> npm install cash-grep –g
奇妙的是,如果你想在编程时使用它,可以这样调用:
const $ = require('cash');
const out = $.ls('.', {l: true});
感觉不够方便么?那么下面这样呢:
const out = $('ls -lah');
当然,你想寻求对Unix命令更好的编程体验,请看这里:Shell.JS。
安全性和体验
由于Shell.JS和本文所提到的Cash,虽然都给大家提供了Unix shell的体验,但在安全性和某些细节处理上,会显得更好些,因为这些Unix命令是由javascript库模拟实现的,返回的都是javascript对象。
看看下面大家就明白了:
Cash的实现:
$('ls');// 'node_modules\n'
$('echofoo > foo.txt');
Shell.JS的实现:
ls;// ['node_modules'];
echo('foo').to('foo.txt');
顺便提一句,笔者还有一个项目Vorpal是Node.js写的。
cash的命令
目前cash支持的命令:
alias
cat
cd
cp
echo
grep
kill
less
ls
mkdir
mv
pwd
rm
sort
touch
unalias
想要笔者开发更多的命令?请在这里投票。当然,笔者也欢迎大家来贡献代码。最近,笔者正在寻找有开发.msi(windows安装包)经验的人,希望能帮忙对Cash的内容进行封装,组成独立的包,有意者请联系笔者。
- 上一篇: js-ES6 完全使用手册
- 下一篇: js数组方法笔记
猜你喜欢
- 2024-12-14 js数组方法笔记
- 2024-12-14 如何找出爬取网站的来源IP?
- 2024-12-14 js-ES6 完全使用手册
- 2024-12-14 开发技巧汇总|对于imag.js你不知道的事
- 2024-12-14 JS基本数据类型BigInt
- 2024-12-14 JavaScript数组用法
- 2024-12-14 简单几步让你的 JS 写得更漂亮
- 2024-12-14 第29节 原型prototype-Javascript-零点程序员-王唯
- 2024-12-14 五十四、最基础的冒泡排序
- 2024-12-14 JavaScript 常用功能总结
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)