Pomoc do skryptu Bash | mongoDB

3

Piszę skrypt bash, który używa narzędzia mongoimport do dodawania danych do bazy danych.

Następujące polecenie działa pomyślnie:

$ mongoimport -h localhost:27017 -d test -c ecg --fieldFile data/ecg_fields --type csv --file data/temp_ecg_data

Następnie umieściłem go w skrypcie bash w następujący sposób:

#!/bin/bash

HOST=$1
DATABASE=$2
COLLECTION=$3
FIELDFILE=$4
FIELDTYPE=$5
FILE=$6

mongoimport -h $HOST -d $DATABASE -c $COLLECTION --fieldFile $FIELDFILE --type $FILETYPE --file $FILE

Teraz mam błąd. Oto wyjście:

connected to: localhost:27017
Sat Dec 08 15:49:44 ERROR: don't know what type [--file] is

Jak to naprawić?

Aman
źródło

Odpowiedzi:

2

Błędnie odnosiłeś się do FILETYPE nie FIELDTYPE. Trochę poprawione:

#!/bin/bash

HOST=$1
DATABASE=$2
COLLECTION=$3
FIELDFILE=$4
FIELDTYPE=$5
FILE=$6

if [[ -z "$6" ]] ; then
   echo "Usage: ..." 1>&2
   exit 1
fi

mongoimport -h "$HOST" -d "$DATABASE" -c "$COLLECTION" --fieldFile "$FIELDFILE" --type "$FIELDTYPE" --file "$FILE"
kubanczyk
źródło
1
Powinieneś też wyjaśnić, co robisz.
Baarn