nodejs命令是从哪里调用的
研究了下hexo的命令调用
npm config
运行了下 npn config list命令,输出如下:
1 | ; cli configs |
prefix和cache是npm的全局路径,
我们到该目录下发现有个hexo.cmd和hexo 文件,打开hexo.cmd,代码如下:
1 | @IF EXIST "%~dp0\node.exe" ( |
那我们就到当前目录的node_modules中看1
2
3
4
5
6
7
8
9
```js
#!/usr/bin/env node
'use strict';
require('../lib/hexo')();
console.log('hi');
在任意目录下执行hexo命令会输出
1 | hi |
DOS批处理
DOS批处理命令:
%~dp0 代表当前目录
SETLOCAL
开始批处理文件中环境改动的本地化操作。在执行 SETLOCAL 之后所做的环境改动只限于批处理文件。要还原原先的设置,必须执行 ENDLOCAL。 达到批处理文件结尾时,对于该批处理文件的每个尚未执行的 SETLOCAL 命令,都会有一个隐含的 ENDLOCAL 被执行。
PathExt修改 让我们的Bat文件执行的优先级别在其他可执行文件之前就OK了
DOS批处理中%~dp0表示什么意思
批处理,%~d0 cd %~dp0 代表什么意思
cmd SETLOCAL使用介绍
修改Pathext,让你的东东优先执行