Como usar uma variável bash para o @filepath em um comando curl

0

Estou tentando escrever um script para executar uma série de comandos de curl. O comando que estou tentando executar é o seguinte:

curl -XPUT $URL'/test/' -d @$DATA_DIR/index-settings.json

Este é o meu script bash

#!/bin/bash
set -e

DATA_DIR="/usr/local/es"
URL="http://localhost:9200"

curl -XPUT $URL'/test/' -d @$DATA_DIR/index-settings.json

Confirmei que o comando funciona se eu o executar manualmente assim:

curl -XPUT 'http://localhost:9200/test/' -d @/usr/local/es/index-settings.json

O problema é do $ DATA_DIR. Quando executo o script bash com a variável $ DATA_DIR, recebo este erro:

Warning: Couldn't read data from file 
Warning: "/usr/local/es/index-settings.json", this makes 
Warning: an empty POST.

É possível usar uma variável dentro de um comando curl que use argumentos -d @?

    
por medium 25.09.2018 / 18:10

0 respostas