StartHexo.batの内容

hexoをポータブルで使う方法」の記事で、StartHexo.batとかすごそうな名前のファイルが出ていますが(自称)、
ただパスを通すだけのファイルです。

しかし、作成に丸1日かかりました(バッチファイルなんて作ったことなかった)。
もう作ることはないでしょうが、念のため備忘録を残します。

StartHexo.bat

こちらがStartNode.batの中身です。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@echo off
cd /D %~dp0
SET DP0=%~dp0

rem node.js
SET DP1=%DP0%node-v18.12.1-win-x64
SET NODE_PATH=%DP1%\node.exe
SET NCMD_PATH=%DP1%\npm.cmd

rem git
SET DP2=%DP0%git
SET GIT_PATH=%DP2%\bin\git.exe
SET GCMD_PATH=%DP2%\cmd

rem set path
SET PATH=%PATH%;%DP1%;%DP2%;%NODE_PATH%;%NCMD_PATH%;%GIT_PATH%;%GCMD_PATH%
cmd

内容

行ごとに説明します。

@echo off

コマンドを実行したときに出てくる文字を表示させないようにします。
(なくても動きます)

%~dp0

これは、このバッチファイルがあるフォルダを指します。

SET

「SET」は変数です。「SET 変数名=代入する文字」で書きます。

rem

「rem」はただのメモです。なくても動きます。

%変数名%・・・

「変数に入れたパス/・・・」というパスを表します。
例えば「%DP0%node-v18.12.1-win-x64」は、「DP0」の中の「node-v18.12.1-win-x64」フォルダを指します。
ほかの似たコマンドも同じ要領です。

SET PATH=%PATH%;%・・・

%PATH%;の後に、パス(またはパスを代入した変数の名前)を%で囲んでつなげれば、パスを通せます。

cmd

「@echo off」から抜けます。

不具合の対処

うまく動かないときは、文字コードを「ANSI」にすることで対処できる可能性があります。