export elasticsearchwebaddress=localhost:9200
# 1. Add document
curl -X PUT "$elasticsearchwebaddress/megacorp/employee/1" -d '
{
    "first_name" : "John",
    "last_name" :  "Smith",
    "age" :        25,
    "about" :      "I love to go rock climbing",
    "interests": [ "sports", "music" ]
}'

curl -X DELETE "$elasticsearchwebaddress/megacorp/employee/1" -d '
{
    "first_name" : "John",
    "last_name" :  "Smith",
    "age" :        25,
    "about" :      "I love to go rock climbing",
    "interests": [ "sports", "music" ]
}'

curl -X PUT "$elasticsearchwebaddress/megacorp/employee/2" -d '
{
    "first_name" :  "Jane",
    "last_name" :   "Smith",
    "age" :         32,
    "about" :       "I like to collect rock albums",
    "interests":  [ "music" ]
}'

curl -X PUT "$elasticsearchwebaddress/megacorp/employee/3" -d '
{
    "first_name" :  "Douglas",
    "last_name" :   "Fir",
    "age" :         35,
    "about":        "I like to build cabinets",
    "interests":  [ "forestry" ]
}'

# 2. Retrive information
curl -X GET "$elasticsearchwebaddress/megacorp/employee/1"


curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search"

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search?q=last_name:Smith"

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search" -d '
{
    "query" : {
        "match" : {
            "last_name" : "Smith"
        }
    }
}'

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search" -d '
{
    "query" : {
        "filtered" : {
            "filter" : {
                "range" : {
                    "age" : { "gt" : 30 } 
                     }
                },
            "query" : {
                "match" : {
                    "last_name" : "smith" 
                      }
               }
          }
     }
}'

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search" -d '
{
    "query" : {
        "match" : {
            "about" : "rock climbing"
        }
    }
}'

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search" -d '
{
    "query" : {
        "match_phrase" : {
            "about" : "rock climbing"
        }
    }
}'

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search" -d '
{
    "query" : {
        "match_phrase" : {
            "about" : "rock climbing"
        }
    },
    "highlight": {
        "fields" : {
            "about" : {}
        }
    }
}'

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search" -d '
{
  "aggs": {
    "all_interests": {
      "terms": { "field": "interests" }
    }
  }
} '

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search" -d '
{
  "query": {
    "match": {
      "last_name": "smith"
    }
  },
  "aggs": {
    "all_interests": {
      "terms": {
        "field": "interests"
      }
    }
  }
}'

curl -X GET "$elasticsearchwebaddress/megacorp/employee/_search" -d '
{
    "aggs" : {
        "all_interests" : {
            "terms" : { "field" : "interests" },
            "aggs" : {
                "avg_age" : {
                    "avg" : { "field" : "age" }
                }
            }
        }
    }
}'

curl -X GET "$elasticsearchwebaddress/_cluster/health"
curl -X GET "$elasticsearchwebaddress/_cluster/health?pretty"

curl -X PUT "$elasticsearchwebaddress/blogs" -d '
{
   "settings" : {
      "number_of_shards" : 3,
      "number_of_replicas" : 1
   }
}'
curl -X PUT "$elasticsearchwebaddress/website/blog/123" -d '
{
  "title": "My first blog entry",
  "text":  "Just trying this out...",
  "date":  "2014/01/01"
}'
curl -i -X GET http://localhost:9200/website/blog/124?pretty

curl -i -X GET http://localhost:9200/website/blog/123?pretty\&_source=title,text
curl -i -X GET http://localhost:9200/website/blog/123?pretty

curl -i -X GET http://localhost:9200/website/blog/123/_source

#Checking whether document exists.
curl -i -XHEAD http://localhost:9200/website/blog/123

#Updating a document
curl  -X PUT $elasticsearchwebaddress/website/blog/123 -d '
{
  "title": "My first blog entry",
  "text":  "I am starting to get the hang of this...",
  "date":  "2014/01/02"
}'

curl -X PUT "$elasticsearchwebaddress/website/blog/124" -d '
{
  "title": "My first blog entry",
  "text":  "Just trying this out...",
  "date":  "2014/01/01"
}'

curl -X DELETE $elasticsearchwebaddress/website/blog/123
curl -X DELETE $elasticsearchwebaddress/website/blog/1232

curl  -X PUT $elasticsearchwebaddress/website/blog/1232 -d '
{
  "title": "My first blog entry",
  "text":  "I am starting to get the hang of this...",
  "date":  "2014/01/02"
}'

curl  -X PUT $elasticsearchwebaddress/website/blog/1/_create -d '
{
  "title": "My first blog entry",
  "text":  "Just trying this out..."
}'

curl  -X PUT $elasticsearchwebaddress/website/blog/1?version=1 -d '
{
  "title": "My first blog entry",
  "text":  "Starting to get the hang of this..."
}'

curl  -X PUT $elasticsearchwebaddress/website/blog/2?version=5\&version_type=external -d '
{
  "title": "My first external blog entry",
  "text":  "Starting to get the hang of this..."
}'

curl  -X PUT $elasticsearchwebaddress/website/blog/2?version=10\&version_type=external -d '
{
  "title": "My first external blog entry",
  "text":  "This is a piece of cake..."
}'

#Partial update document

curl -X GET $elasticsearchwebaddress/website/blog/1?pretty
curl -X POST $elasticsearchwebaddress/website/blog/1/_update -d '
{
   "doc" : {
      "tags" : [ "testing" ],
      "views": 0
   }
}'

#Use scripts to update the value
curl -X POST $elasticsearchwebaddress/website/blog/1/_update -d '
{
   "script" : "ctx._source.views+=1"
}'

curl -X GET $elasticsearchwebaddress/website/blog/1?pretty
curl -X POST $elasticsearchwebaddress/website/blog/1/_update -d '
{
   "script" : "ctx._source.tags+=new_tag",
   "params" : {
      "new_tag" : "search"
   }
}'

curl -X GET $elasticsearchwebaddress/website/blog/1?pretty

curl -X POST $elasticsearchwebaddress/website/blog/1/_update -d "
{
   \"script\" : \"ctx.op = ctx._source.views == count ? 'delete' : 'none'\",
    \"params\" : {
        \"count\": 1
    }
}"

#upset
#cannot found 
curl -X GET $elasticsearchwebaddress/website/pageviews/1?pretty

curl -X POST $elasticsearchwebaddress/website/pageviews/1/_update -d '
{
   "script" : "ctx._source.views+=1",
   "upsert": {
       "views": 1
   }
}'

curl -X GET $elasticsearchwebaddress/website/pageviews/1?pretty

curl -X POST $elasticsearchwebaddress/website/pageviews/1/_update?retry_on_conflict=5 -d '
{
   "script" : "ctx._source.views+=1",
   "upsert": {
       "views": 0
   }
}'

#Retrieve multiple documents through multiple requests.
curl -X GET $elasticsearchwebaddress/_mget?pretty -d '
{
   "docs" : [
      {
         "_index" : "website",
         "_type" :  "blog",
         "_id" :    2
      },
      {
         "_index" : "website",
         "_type" :  "pageviews",
         "_id" :    1,
         "_source": "views"
      }
   ]
}'

curl -X GET $elasticsearchwebaddress/website/blog/_mget?pretty -d '
{
   "docs" : [
      { "_id" : 2 },
      { "_type" : "pageviews", "_id" :   1 }
   ]
}'

curl -X GET $elasticsearchwebaddress/website/blog/_mget?pretty -d '
{
   "ids" : [ "2", "1" ]
}'

#bulk API allows us to make multiple create, index, update or delete requests in a single step.
curl -X POST $elasticsearchwebaddress/_bulk -d '
{ "delete": { "_index": "website", "_type": "blog", "_id": "123" }} 
{ "create": { "_index": "website", "_type": "blog", "_id": "123" }}
{ "title":    "My first blog post" }
{ "index":  { "_index": "website", "_type": "blog" }}
{ "title":    "My second blog post" }
{ "update": { "_index": "website", "_type": "blog", "_id": "123", "_retry_on_conflict" : 3} }
{ "doc" : {"title" : "My updated blog post"} }
'
curl -X GET $elasticsearchwebaddress/website/blog

curl operate elasticsearch的更多相关文章

  1. 使用cURL尝试ElasticSearch

    测试环境:debian 9官网提供了 deb,rpm,源码下载 官方下载地址:https://www.elastic.co/downloads/elasticsearch 通过源码安装会遇到一些小问题 ...

  2. Curl操作Elasticsearch的常用方法

    Elasticsearch对于文档操作,提供了以下几种API,本文就说明如何使用curl方式来调用这些API. API种类 单文档操作API 1.* Index API 索引文档 * 为文档创建索引 ...

  3. elasticsearch(5) curl 操作elasticsearch

    创建索引之前可以对索引做初始化操作, 比如指定shards数量以及replicas的数量.     library为索引的名称 CURL -XPUT 'http://192.168.1.10:9200 ...

  4. Curl实现ElasticSearch的增删改查

    一.添加数据(laravel必须安装Curl扩展) $data = [ 'username'=>"张三", 'sex'=>"女", 'age'=&g ...

  5. window下使用curl操作elasticsearch

    1.下载curlzip,https://curl.haxx.se/download.html; 2.解压,在bin文件夹中找到curl.exe,右键“以管理员身份运行”,cmd e: 换盘符:出现E: ...

  6. Elasticsearch之CURL命令的DELETE

    也可以看我写的下面的博客 Elasticsearch之curl删除 Elasticsearch之curl删除索引库 删除,某一条数据,如下 [hadoop@master elasticsearch-] ...

  7. Elasticsearch【JAVA REST Client】客户端操作

    ES系统作为集群,环境搭建非常方便简单. 现在在我们的应用中,如何对这个集群进行操作呢? 我们利用ES系统,通常都是下面的架构: 在这里,客户端的请求通过LB进行负载均衡,因为操作任何一个ES的实例, ...

  8. Elasticsearch教程-从入门到精通(转载)

    转载,原文地址:http://mageedu.blog.51cto.com/4265610/1714522?utm_source=tuicool&utm_medium=referral 各位运 ...

  9. Elasticsearch简介与安装

    搜索 就是在任何场景下,找寻你想要的信息,这个时候,会输入一段你要搜索的关键字,然后就期望找到这个关键字相关的有些信息 垂直搜索 站内搜索 互联网搜索 电商网站,招聘网站,新闻网站,各种app IT系 ...

随机推荐

  1. 增量式PID计算公式4个疑问与理解

    一开始见到PID计算公式时总是疑问为什么是那样子?为了理解那几道公式,当时将其未简化前的公式“活生生”地算了一遍,现在想来,这样的演算过程固然有助于理解,但假如一开始就带着对疑问的答案已有一定看法后再 ...

  2. 使用ZeroNet搭建P2P全球网站

    软件 ZeroNet是一个利用比特币加密和BT技术提供不受审查的网络与通信的BT平台,ZeroNet网络功能已经得到完整的种子的支持和加密连接,保证用户通信和文件共享的安全.使用ZeroNet,你可以 ...

  3. PHP从数据库导出EXCEL文件

    参考博客链接:http://www.cnblogs.com/huangcong/p/3687665.html 我的程序代码 原生导出Excel文件 <?phpheader('Content-ty ...

  4. vijos1059 积木城堡[n年浙江省队第X轮](背包的方案总数 or 01背包)

    描述 XC的儿子小XC最喜欢玩的游戏用积木垒漂亮的城堡.城堡是用一些立方体的积木垒成的,城堡的每一层是一块积木.小XC是一个比他爸爸XC还聪明的孩子,他发现垒城堡的时候,如果下面的积木比上面的积木大, ...

  5. ipone5 无法安装ipa软件

    iphone5s软件无法安装解决方法一,点击设置 - 通用 - 访问限制,先关闭“安装应用程序”选项,再打开,把后台应用程序刷新也关了,测试. iphone5s软件无法安装解决方法二,点击设置 - 通 ...

  6. mysql下mysqladmin日常管理命令总结

    mysqladmin 工具的使用格式:mysqladmin [option] command [command option] command ......参数选项:-c number 自动运行次数统 ...

  7. jdbc连接数据库总结

    jdbc支持多种数据库,比如说oracle, mysql, mssql,现在总结一下连接各种数据库的相关知识 1,mysql连接,代码如下 Class.forName("com.mysql. ...

  8. 解析百度搜索结果链接的url,获取真正的url

    通常,在百度输入关键词搜索出现的列表页,点击目标链接,然而跳转的时候却是百度地址,经过百度解析,才真的跳到目标页面. 在SEO中,经常需要看下自己的网站排名,又不想手动每天手动去点,可用以下方法去得到 ...

  9. Cordova - 常用的插件汇总(附插件的安装、查询、更新、删除等命令)

    Hybrid应用比web应用强大之处在于可以使运行在容器中的web内容访问 native APIs.Cordova 提供了许多插件用于调用移动设备上的API. 一,插件相关常用命令   1,查看所有已 ...

  10. ImageMagick常用指令详解

    Imagemagick常用指令 (ImageMagick--蓝天白云) (ImageMagick官网) (其他比较有价值的IM参考) (图片自动旋转的前端实现方案) convert 转换图像格式和大小 ...