目標
介紹 Hexo 常用命令的作用。
本文基於 hexo: 3.8.0
命令
常用命令
命令 | 簡寫 | 描述 |
---|---|---|
hexo init [folder] |
新建網站 | |
hexo new [layout] <title> |
新建文章 | |
hexo generate |
hexo g |
生成靜態文件 |
hexo publish [layout] <filename> |
發佈草稿 | |
hexo server |
hexo s |
啓動服務器 |
hexo deploy |
hexo d |
部署網站 |
hexo clean |
清除緩存文件 | |
hexo list |
列出站點信息 | |
hexo version |
顯示 Hexo 版本 |
init
hexo init [folder]
新建一個網站。如果沒有設置 folder ,Hexo 默認在目前的文件夾建立網站。
new
hexo new [layout] <title>
新建一篇文章。如果沒有設置 layout 的話,默認使用 _config.yml 中的 default_layout 參數代替。如果標題包含空格的話,請使用引號括起來。
generate
hexo generate
或簡寫爲:
hexo g
生成靜態文件,生成的文件保存在 public 文件夾內。
選項 | 描述 |
---|---|
-d, --deploy |
文件生成後立即部署網站 |
-w, --watch |
監視文件變動 |
監視文件變動
hexo generate --watch
Hexo 能夠監視文件變動並立即重新生成靜態文件,在生成時會比對文件的 SHA1 checksum,只有變動的文件纔會寫入。
完成後部署
可執行下列的其中一個命令,讓 Hexo 在生成完畢後自動部署網站,兩個命令的作用是相同的。
hexo generate --deploy
hexo deploy --generate
或簡寫爲:
hexo g -d
hexo d -g
server
hexo server
或簡寫爲:
hexo s
啓動服務器。默認情況下,訪問網址爲: http://localhost:4000/
選項 | 描述 |
---|---|
-i, --ip |
Override the default server IP. Bind to all IP address by default. |
-l, --log [format] |
Enable logger. Override log format. |
-o, --open |
Immediately open the server url in your default web browser. |
-p, --port |
Override the default port. |
-s, --static |
Only serve static files. |
deploy
hexo deploy
或簡寫爲:
hexo d
部署網站。
參數 | 描述 |
---|---|
-g, --generate |
部署之前預先生成靜態文件 |
clean
hexo clean
清除緩存文件 (db.json) 和已生成的靜態文件 (public)。
在某些情況(尤其是更換主題後),如果發現對站點的更改無論如何也不生效,可以運行該命令清除緩存後重新生成靜態文件。
hexo-server
Hexo 3.0 把服務器模塊獨立出來,如果 hexo server
命令無法使用,需要單獨安裝 hexo-server 才能使用。
npm install hexo-server --save
啓動服務器
安裝完成後,輸入以下命令以啓動服務器,網站會在 http://localhost:4000 下啓動。
hexo server
或者
hexo s
在服務器啓動期間,Hexo 會監視文件變動並自動更新,無須重啓服務器。
修改端口
如果想要更改端口,或是在執行時遇到了 EADDRINUSE 錯誤,可以在執行時使用 -p
選項指定其它端口,例如:
hexo server -p 5000
靜態模式
在靜態模式下,服務器只處理 public 文件夾內的文件,而不會處理源文件變動,在執行時,應該先自行執行 hexo generate,此模式通常用於生產環境(production mode)下。
hexo server -s
自定義IP
服務器默認運行在 0.0.0.0
,我們可以覆蓋默認的 IP 設置,例如:
hexo server -i 192.168.1.1
指定這個參數後,就只能通過該 IP 才能訪問站點。
例如,對於一臺使用無線網絡的筆記本電腦,除了指向本機的 127.0.0.1
外,通常還有一個 192.168.*.*
的局域網 IP,如果像上面那樣使用 -i
參數,就不能用 127.0.0.1
來訪問站點了。對於有公網 IP 的主機,如果您指定一個局域網 IP 作爲 -i
參數的值,那麼就無法通過公網來訪問站點。
輸出調試信息
hexo server --debug