YUKI Hiroshi
yuki****@clear*****
Tue Aug 19 12:13:09 JST 2014
http://ja.wikipedia.org/wiki/Friendly_interactive_shell これによると、$()も${}も無いということのようですねぇ YUKI Hiroshi wrote: > fish 2.1.0 だそうです。 > > Kenji Okimoto wrote: >> >> >> On 2014年08月19日 11:53, YUKI Hiroshi wrote: >>> 新美さんが使ってるシェルでは動かないらしいんです。。。 >> >> 何を使ってるんでしょうか? >> 参考までに、バージョン込みで教えて欲しいです。 >> >>> >>> 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/