# Elastic 中文分詞安裝
安裝 IKAnalyzer
---
## 一、安裝步驟
如果是使用官方ELK Docker yml 安裝的話,會有三個 cluster,這裡示範在es01安裝中文分詞
1. 進入 elasticsearch bash
```bash=
docker exec -it ex01 bash
```
2. 在 Elasticsearch bash 中,下載並安裝 IKAnalyzer
> IKAnalyzer 與Elasticsearch 有版本對應的問題,需要注意目前所安裝的Elastic版本是多少
> [IKAnalyzer](https://github.com/medcl/elasticsearch-analysis-ik/)
```bash=
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.12.0/elasticsearch-analysis-ik-7.12.0.zip
```
3. 進入IKAnalyzer.cfg.xml
```bash=
vi config/analysis-ik/IKAnalyzer.cfg.xml
```
:::warning
如果檔案是亂碼,在vi中輸入`:set encoding=utf-8`
:::
4. 編輯 IKAnalyzer.cfg.xml
```xml=
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>IK Analyzer 扩展配置</comment>
<!--用户可以在这里配置自己的扩展字典 -->
<entry key="ext_dict">custom/custom.dic</entry>
<!--用户可以在这里配置自己的扩展停止词字典-->
<entry key="ext_stopwords"></entry>
<!--用户可以在这里配置远程扩展字典 -->
<entry key="remote_ext_dict"></entry>
<!--用户可以在这里配置远程扩展停止词字典-->
<!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>
```
5. 添加字典檔
* 到analysis-ik 資料夾下
```bash
cd config/analysis-ik
```
* 新增custom 資料夾
```bash=
mkdir custom
```
* 下載字典檔
```bash=
wget https://raw.githubusercontent.com/samejack/sc-dictionary/master/main.txt -O custom/custom.dic
```
* 重開Elasticsearch
:::warning
如果出現 > bash: wget: command not found
先執行 `yum -y install wget`
:::
## 二、測試分詞功能
1.到 kibana 的 Dev Tools
2.輸入以下內容至工作區
```json=
GET /_analyze
{
"text": "鬼滅之刃",
"analyzer": "ik_smart"
}
```
3.若安裝成功,執行上面的指令後應該要回傳
```json=
{
"tokens" : [
{
"token" : "鬼",
"start_offset" : 0,
"end_offset" : 1,
"type" : "CN_CHAR",
"position" : 0
},
{
"token" : "滅",
"start_offset" : 1,
"end_offset" : 2,
"type" : "CN_CHAR",
"position" : 1
},
{
"token" : "之刃",
"start_offset" : 2,
"end_offset" : 4,
"type" : "CN_WORD",
"position" : 2
}
]
}
```