我正在使用CURL将数据插入到ElasticSearch中,当我插入固定数据时,它工作得很好。我正在尝试获取当前DateTime并分配给一个变量并与我要插入的对象一起使用。
这是我的剧本,
while true;
do
echo $i
number=$RANDOM;
let "number %= 9";
let "number = number + 1";
range=10;
for i in {1..18}; do
r=$RANDOM;
let "r %= $range";
number="$number""$r";
done;
curl -XPUT 'http://localhost:9200/nondomain_order/orders/'+$number+'' -d '{
"CustType": null,
"tag": "OrderType:Postpaid",
"GUDeviceID": "0",
"IsAvailable": false,
"GUOrderID": "123",
"OrderID": "3",
"OrderDate": "2015-01-06T15:23:42.7198285+05:30",
"GUAccountID": "15010615234251403",
"CreateUser": "admin",
"CreateDate": "2015-01-01T15:23:42",
"CancelledDate": "1899-01-01T00:00:00",
"CancelledUser": null,
"GUTranID": "15010615234271604",
"TenentID": 39,
"CompanyID": 42,
"ViewObjectID": 0,
"ObjectID": null,
"Status": 2,
"OrderDetails": [
{
"GUPromtionID": "15010519341113508",
"GUOrderID": "15010615234271703",
"ChangeID": 0,
"GUPackageID": "14100112243589402",
"startdate": "2015-01-06T00:00:00"
}
]
字符串
我需要获取当前的DateTime并将其分配给指定日期。如何才能做到这一点?
3条答案
按热度按时间q3qa4bjr1#
在你的弦里,改变
字符串
到
型
在这里,我终止了
'
字符串,并启动了一个"
字符串,其中包含$(date)
。否则,它不会被执行,而是作为字符串传递给curl
。你也可以事先将它赋给一个变量,然后像这样使用它:
型
其他问题
变化
型
成
型
Bash连接只是两个字符串一个接一个,它们之间没有空格。否则,它将查询像
http://localhost:9200/nondomain_order/orders/+0123456789+
而不是http://localhost:9200/nondomain_order/orders/0123456789
这样的URL。(Here,我用双引号保护
number
变量不被扩展,以防它发生变化)chhkpiq42#
与其在引号中使用引号,我建议使用here-doc来摆脱所有神奇的引号。像这样使用
curl
:字符串
pkln4tw63#
你可以这样做:
字符串