【kibana源码解析】之启动脚本
2017-03-27 19:57
801 查看
@echo off SETLOCAL set SCRIPT_DIR=%~dp0 for %%I in ("%SCRIPT_DIR%..") do set DIR=%%~dpfI set NODE=%DIR%\node\node.exe WHERE /Q node IF %ERRORLEVEL% EQU 0 ( for /f "delims=" %%i in ('WHERE node') do set SYS_NODE=%%i ) If Not Exist "%NODE%" ( IF Exist "%SYS_NODE%" ( set "NODE=%SYS_NODE%" ) else ( Echo unable to find usable node.js executable. Exit /B 1 ) ) TITLE Kibana Server "%NODE%" %NODE_OPTIONS% "%DIR%\src\cli" %* :finally ENDLOCAL
这是kibana的批处理脚本,
1、SCRIPT_DIR=%~dp0 表示 获取批处理文件的绝对路径(包含盘符),并赋值给SCRIPT_DIR
2、for %%I in (“%SCRIPT_DIR%..”) do set DIR=%%~dpfI 基本是利用for循环,目录返回上一层级,并把该绝对路径赋值给DIR
如测试bat文件:
SET SCRIPT_DIR=%~dp0 for %%I in ("%SCRIPT_DIR%..") do set DIR=%%~dpfI echo %SCRIPT_DIR% echo %DIR% pause
把该文件放在”C:\Users\fsz\Desktop\”路径下,并运行该批处理文件。会分别输出: C:\Users\fsz\Desktop\ 、C:\Users\fsz
3、”%NODE%” %NODE_OPTIONS% “%DIR%\src\cli” %*
这句话的基本功能就是通过nodejs启动 src\cli\index.js 这个文件(nodejs会默认找到文件名为index的js并执行)
%* 是获取命令行参数的意思,在一般情况下用不到,可以在参考文献中自行学习
http://www.2cto.com/kf/201106/94439.html
http://www.2cto.com/os/201205/131134.html
http://blog.csdn.net/albertsh/article/details/52788106
相关文章推荐
- 04-Kafka Broker启动脚本及对应源码解析
- nginx源码编译后启动脚本
- Linux Shell经典实例解析--Oracle启动脚本(下)
- Linux操作系统开机自行启动项目详细解析(主要针对启动脚本)
- OpenStack Cinder服务启动过程中的资源加载和扩展源码解析之三
- Nginx 源码-启动脚本!
- Hadoop启动脚本全解析
- linux APACHE2.2.10源码安装服务自动启动脚本
- HBASE启动脚本/Shell解析
- OpenStack Cinder服务启动过程中的资源加载和扩展源码解析之一
- Linux 开机脚本启动顺序--inittab脚本启动解析
- squid源码安装的服务启动脚本
- Linux Shell经典实例解析:Oracle启动脚本
- spring默认启动位置以及contextConfigLocation设置源码解析
- [置顶] ifup-wlan脚本解析(wifi启动STA或是AP模式)
- Linux Shell经典实例解析--Oracle启动脚本(上)
- 解析Android启动脚本init.rc && Android的启动模式
- spring默认启动位置以及contextConfigLocation设置源码解析
- apacheu源码安装,手写的启动脚本 ,restart 有问题,请多指教
- Hadoop启动脚本全解析,不能再全了![bed]