[Groonga-commit] droonga/droonga.org at a66a101 [gh-pages] Don't use "${...}" style (it doesn't work some shells)

アーカイブの一覧に戻る

YUKI Hiroshi yuki****@clear*****
Tue Aug 19 11:53:20 JST 2014


新美さんが使ってるシェルでは動かないらしいんです。。。

Kouhei Sutou wrote:
> dashでもいけるから大丈夫じゃない!?
> 
>   % dash
>   $ endpoint=x
>   $ echo "a${endpoint}c"
>   axc
> 
> 
> In <20140819.115034.1792408180683606897.kou �� clear-code.com>
>   "Re: [Groonga-commit] droonga/droonga.org �� a66a101 [gh-pages] Don't use "${...}" style (it doesn't work some shells)" on Tue, 19 Aug 2014 11:50:34 +0900 (JST),
>   Kouhei Sutou <kou �� clear-code.com> wrote:
> 
>>>     Don't use "${...}" style (it doesn't work some shells)
>>
>> え!?そうなの!?
>>
>> In <a66a101c6a14cae0d252c995190c8c7fd78cb508 �� jenkins.clear-code.com>
>>   "[Groonga-commit] droonga/droonga.org �� a66a101 [gh-pages] Don't use "${...}" style (it doesn't work some shells)" on Tue, 19 Aug 2014 11:39:15 +0900,
>>   YUKI Hiroshi <null+groonga �� clear-code.com> wrote:
>>
>>> YUKI Hiroshi	2014-08-19 11:39:15 +0900 (Tue, 19 Aug 2014)
>>>
>>>   New Revision: a66a101c6a14cae0d252c995190c8c7fd78cb508
>>>   https://github.com/droonga/droonga.org/commit/a66a101c6a14cae0d252c995190c8c7fd78cb508
>>>
>>>   Message:
>>>     Don't use "${...}" style (it doesn't work some shells)
>>>
>>>   Modified files:
>>>     tutorial/1.0.6/dump-restore/index.md
>>>     tutorial/1.0.6/groonga/index.md
>>>
>>>   Modified: tutorial/1.0.6/dump-restore/index.md (+9 -9)
>>> ===================================================================
>>> --- tutorial/1.0.6/dump-restore/index.md    2014-08-14 18:46:29 +0900 (335931a)
>>> +++ tutorial/1.0.6/dump-restore/index.md    2014-08-19 11:39:15 +0900 (1d7b523)
>>> @@ -141,19 +141,19 @@ If you are reading this tutorial sequentially, you'll have an existing cluster a
>>>  Make it empty with these commands:
>>>  
>>>      # endpoint="http://192.168.0.10:10041"
>>> -    # curl "${endpoint}/d/table_remove?name=Location"
>>> +    # curl "$endpoint/d/table_remove?name=Location"
>>>      [[0,1406610703.2229023,0.0010793209075927734],true]
>>> -    # curl "${endpoint}/d/table_remove?name=Store"
>>> +    # curl "$endpoint/d/table_remove?name=Store"
>>>      [[0,1406610708.2757723,0.006396293640136719],true]
>>> -    # curl "${endpoint}/d/table_remove?name=Term"
>>> +    # curl "$endpoint/d/table_remove?name=Term"
>>>      [[0,1406610712.379644,0.00006723403930664062],true]
>>>  
>>>  After that the cluster becomes empty. Confirm it:
>>>  
>>>      # endpoint="http://192.168.0.10:10041"
>>> -    #  curl "${endpoint}/d/table_list"
>>> +    #  curl "$endpoint/d/table_list"
>>>      [[0,1406610804.1535122,0.0002875328063964844],[[["id","UInt32"],["name","ShortText"],["path","ShortText"],["flags","ShortText"],["domain","ShortText"],["range","ShortText"],["default_tokenizer","ShortText"],["normalizer","ShortText"]]]]
>>> -    # curl "${endpoint}/d/select?table=Store&output_columns=name&limit=10"
>>> +    # curl "$endpoint/d/select?table=Store&output_columns=name&limit=10"
>>>      [[0,1401363465.610241,0],[[[null],[]]]]
>>>  
>>>  ### Restore data from a dump result, to an empty Droonga cluster
>>> @@ -176,7 +176,7 @@ Note to these things:
>>>  
>>>  Then the data is completely restored. Confirm it:
>>>  
>>> -    # ${endpoint}/select?table=Store&output_columns=name&limit=10"
>>> +    # $endpoint/select?table=Store&output_columns=name&limit=10"
>>>      [[0,1401363556.0294158,0.0000762939453125],[[[40],[["name","ShortText"]],["1st Avenue & 75th St. - New York NY  (W)"],["76th & Second - New York NY  (W)"],["Herald Square- Macy's - New York NY"],["Macy's 5th Floor - Herald Square - New York NY  (W)"],["80th & York - New York NY  (W)"],["Columbus @ 67th - New York NY  (W)"],["45th & Broadway - New York NY  (W)"],["Marriott Marquis - Lobby - New York NY"],["Second @ 81st - New York NY  (W)"],["52nd & Seventh - New York NY  (W)"]]]]
>>>  
>>>  ## Duplicate an existing Droonga cluster to another empty cluster directly
>>> @@ -204,9 +204,9 @@ Construct two clusters by `droonga-engine-catalog-modify` and make one cluster e
>>>                                      --update \
>>>                                      --replica-hosts=$host
>>>      # endpoint="http://$host:10041"
>>> -    # curl "${endpoint}/d/table_remove?name=Location"
>>> -    # curl "${endpoint}/d/table_remove?name=Store"
>>> -    # curl "${endpoint}/d/table_remove?name=Term"
>>> +    # curl "$endpoint/d/table_remove?name=Location"
>>> +    # curl "$endpoint/d/table_remove?name=Store"
>>> +    # curl "$endpoint/d/table_remove?name=Term"
>>>  
>>>  After that there are two clusters: one contains `192.168.0.10` with data, another contains `192.168.0.11` with no data. Confirm it:
>>>  
>>>
>>>   Modified: tutorial/1.0.6/groonga/index.md (+12 -12)
>>> ===================================================================
>>> --- tutorial/1.0.6/groonga/index.md    2014-08-14 18:46:29 +0900 (2c50b5e)
>>> +++ tutorial/1.0.6/groonga/index.md    2014-08-19 11:39:15 +0900 (7ddfacb)
>>> @@ -193,7 +193,7 @@ Requests are completely same to ones for a Groonga server.
>>>  To create a new table `Store`, you just have to send a GET request for the `table_create` command, like:
>>>  
>>>      # endpoint="http://192.168.0.10:10041"
>>> -    # curl "${endpoint}/d/table_create?name=Store&flags=TABLE_PAT_KEY&key_type=ShortText"
>>> +    # curl "$endpoint/d/table_create?name=Store&flags=TABLE_PAT_KEY&key_type=ShortText"
>>>      [[0,1401358896.360356,0.0035653114318847656],true]
>>>  
>>>  Note that you have to specify the host, one of Droonga nodes with active droonga-http-server, in your Droonga cluster.
>>> @@ -202,20 +202,20 @@ All requests will be distributed to suitable nodes in the cluster.
>>>  
>>>  Next, create new columns `name` and `location` to the `Store` table by the `column_create` command, like:
>>>  
>>> -    # curl "${endpoint}/d/column_create?table=Store&name=name&flags=COLUMN_SCALAR&type=ShortText"
>>> +    # curl "$endpoint/d/column_create?table=Store&name=name&flags=COLUMN_SCALAR&type=ShortText"
>>>      [[0,1401358348.6541538,0.0004096031188964844],true]
>>> -    # curl "${endpoint}/d/column_create?table=Store&name=location&flags=COLUMN_SCALAR&type=WGS84GeoPoint"
>>> +    # curl "$endpoint/d/column_create?table=Store&name=location&flags=COLUMN_SCALAR&type=WGS84GeoPoint"
>>>      [[0,1401358359.084659,0.002511262893676758],true],true]
>>>  
>>>  Create indexes also.
>>>  
>>> -    # curl "${endpoint}/d/table_create?name=Term&flags=TABLE_PAT_KEY&key_type=ShortText&default_tokenizer=TokenBigram&normalizer=NormalizerAuto"
>>> +    # curl "$endpoint/d/table_create?name=Term&flags=TABLE_PAT_KEY&key_type=ShortText&default_tokenizer=TokenBigram&normalizer=NormalizerAuto"
>>>      [[0,1401358475.7229664,0.002419710159301758],true]
>>> -    # curl "${endpoint}/d/column_create?table=Term&name=store_name&flags=COLUMN_INDEX|WITH_POSITION&type=Store&source=name"
>>> +    # curl "$endpoint/d/column_create?table=Term&name=store_name&flags=COLUMN_INDEX|WITH_POSITION&type=Store&source=name"
>>>      [[0,1401358494.1656318,0.006799221038818359],true]
>>> -    # curl "${endpoint}/d/table_create?name=Location&flags=TABLE_PAT_KEY&key_type=WGS84GeoPoint"
>>> +    # curl "$endpoint/d/table_create?name=Location&flags=TABLE_PAT_KEY&key_type=WGS84GeoPoint"
>>>      [[0,1401358505.708896,0.0016951560974121094],true]
>>> -    # curl "${endpoint}/d/column_create?table=Location&name=store&flags=COLUMN_INDEX&type=Store&source=location"
>>> +    # curl "$endpoint/d/column_create?table=Location&name=store&flags=COLUMN_INDEX&type=Store&source=location"
>>>      [[0,1401358519.6187897,0.024788379669189453],true]
>>>  
>>>  *IMPORTANT NOTE*: Don't run `table_list` or `column_list` before the table is completely created.
>>> @@ -225,7 +225,7 @@ This is a known issue on the version {{ site.droonga_version }}, and it will be
>>>  OK, now the table has been created successfully.
>>>  Let's see it by the `table_list` command:
>>>  
>>> -    # curl "${endpoint}/d/table_list"
>>> +    # curl "$endpoint/d/table_list"
>>>      [[0,1401358908.9126804,0.001600027084350586],[[["id","UInt32"],["name","ShortText"],["path","ShortText"],["flags","ShortText"],["domain","ShortText"],["range","ShortText"],["default_tokenizer","ShortText"],["normalizer","ShortText"]],[256,"Store","/home/vagrant/droonga/000/db.0000100","TABLE_PAT_KEY|PERSISTENT","ShortText",null,null,null]]]
>>>  
>>>  Because it is a cluster, another endpoint returns same result.
>>> @@ -288,7 +288,7 @@ stores.json:
>>>  
>>>  Then, send it as a POST request of the `load` command, like:
>>>  
>>> -    # curl --data "@stores.json" "${endpoint}/d/load?table=Store"
>>> +    # curl --data "@stores.json" "$endpoint/d/load?table=Store"
>>>      [[0,1401358564.909,0.158],[40]]
>>>  
>>>  Now all data in the JSON file are successfully loaded.
>>> @@ -299,14 +299,14 @@ OK, all data is now ready.
>>>  
>>>  As the starter, let's select initial ten records with the `select` command:
>>>  
>>> -    # curl "${endpoint}/d/select?table=Store&output_columns=name&limit=10"
>>> +    # curl "$endpoint/d/select?table=Store&output_columns=name&limit=10"
>>>      [[0,1401362059.7437818,0.00004935264587402344],[[[40],[["name","ShortText"]],["1st Avenue & 75th St. - New York NY  (W)"],["76th & Second - New York NY  (W)"],["Herald Square- Macy's - New York NY"],["Macy's 5th Floor - Herald Square - New York NY  (W)"],["80th & York - New York NY  (W)"],["Columbus @ 67th - New York NY  (W)"],["45th & Broadway - New York NY  (W)"],["Marriott Marquis - Lobby - New York NY"],["Second @ 81st - New York NY  (W)"],["52nd & Seventh - New York NY  (W)"]]]]
>>>  
>>>  Of course you can specify conditions via the `query` option:
>>>  
>>> -    # curl "${endpoint}/d/select?table=Store&query=Columbus&match_columns=name&output_columns=name&limit=10"
>>> +    # curl "$endpoint/d/select?table=Store&query=Columbus&match_columns=name&output_columns=name&limit=10"
>>>      [[0,1398670157.661574,0.0012705326080322266],[[[2],[["_key","ShortText"]],["Columbus @ 67th - New York NY  (W)"],["2 Columbus Ave. - New York NY  (W)"]]]]
>>> -    # curl "${endpoint}/d/select?table=Store&filter=name@'Ave'&output_columns=name&limit=10"
>>> +    # curl "$endpoint/d/select?table=Store&filter=name@'Ave'&output_columns=name&limit=10"
>>>      [[0,1398670586.193325,0.0003848075866699219],[[[3],[["_key","ShortText"]],["2nd Ave. & 9th Street - New York NY"],["84th & Third Ave - New York NY  (W)"],["2 Columbus Ave. - New York NY  (W)"]]]]
>>>  
>>>  ## Conclusion
>>
>> _______________________________________________
>> Groonga-commit mailing list
>> Groonga-commit �� lists.sourceforge.jp
>> http://lists.sourceforge.jp/mailman/listinfo/groonga-commit
> 
> _______________________________________________
> Groonga-commit mailing list
> Groonga-commit �� lists.sourceforge.jp
> http://lists.sourceforge.jp/mailman/listinfo/groonga-commit
> 

-- 
結城 洋志 <YUKI Hiroshi>
E-mail: yuki �� clear-code.com

株式会社クリアコード
〒113-0033 東京都文京区本郷3-27-12
           本郷デントビル2階
TEL : 03-6231-7270
FAX : 03-6231-7271
WWW : http://www.clear-code.com/




More information about the Groonga-commit mailing list
アーカイブの一覧に戻る