1

シェルスクリプト内の一重引用符の中にコメント(スクリプトに影響を与えないコメントアウトされたコードまたはメモ)を入れることはできますか?

これらを機能させるために、次のことを試みました。

# comment
\# comment
\/\* comment \*\/

以下は私がやろうとしていることの例です。コメントはハッシュで始まり、curlリクエストのデータパッケージ内の単一引用符で囲まれていることがわかります。

curl -XPOST 'http://ec2-54-234-64-66.compute-1.amazonaws.com:9200/nsns/nsn/_mapping?pretty=true' -d '{
    "nsn" : {

        "type" : "object",
        "include_in_all" : "false",
        "index" : "no",
        "properties" : {

        # this data is used for facetting END

            "id" : { "type" : "long", "include_in_all" : "true" },
            "BDC_CODE" : { "type" : "byte" },
            "KID" : { "type" : "byte" },
            "ITEM_STANDARDIZATION_CODE" : { "type" : "string" },

        # we don't know what these field's data look like yet

            "stock_on_hand" : { "type" : "integer" },
            "non_stocked_items" : { "type" : "integer" },
            "stocked_restrictions" : { "type" : "string" },
            "consistency_of_spend" : { "type" : "string" },
            "WSDC" : { "type" : "string" }

        }
    }
}'
4

2 に答える 2

2

問題は一重引用符ではなく、を使用することJSONです。AFAIK、コメントを追加することはできません。JSONでコメントを使用できますか?JSONを参照してください。

ノート :

あなたはあなたを追加する必要が-H "Content-Type: text/json"ありますcURL

于 2013-01-09T23:19:55.957 に答える
1

それらを引用符の中に入れることはできませんが、コメントを残すことができるように文字列を分割することはできます。

json='{
    "nsn" : {

        "type" : "object",
        "include_in_all" : "false",
        "index" : "no",
        "properties" : {
'

# this data is used for facetting END
json+='
            "id" : { "type" : "long", "include_in_all" : "true" },
            "BDC_CODE" : { "type" : "byte" },
            "KID" : { "type" : "byte" },
            "ITEM_STANDARDIZATION_CODE" : { "type" : "string" },
'

# we don't know what these field's data look like yet
json+='
            "stock_on_hand" : { "type" : "integer" },
            "non_stocked_items" : { "type" : "integer" },
            "stocked_restrictions" : { "type" : "string" },
            "consistency_of_spend" : { "type" : "string" },
            "WSDC" : { "type" : "string" }
        }
    }
}'

url='http://ec2-54-234-64-66.compute-1.amazonaws.com:9200/nsns/nsn/_mapping?pretty=true'

curl -XPOST "$url" -d "$json"

+=は、代入演算子を連結するbash固有の文字列であることに注意してください。

于 2013-01-10T01:25:17.163 に答える