я пытаюсь выбрать значение данных для ключа hbase оболочка. я передаю значение ключа в параметре командной строки, для которого это вычисляющий md5sum в сценарии оболочки и должен просканировать в hbase.
следующее является моим сценарием оболочки:
#!/bin/bash
echo "cookieId: $1"
md5_hash="$(echo -n "$1"| md5sum | awk '{print $1}')"
echo "$md5_hash"
echo "get 'VIZVR_profile','md5_hash'" | "hbase shell"
команда, которую я выполняю:
sh hbase.sh "abcd"
но это бросает ошибку как:
hbase.sh: line 5: hbase: command not found
hbase.sh: line 5: : command not found
может кто-либо помогать мне выполнить эту команду оболочки hbase через сценарий оболочки.
Обновление 5-й строки в Вашем сценарии к ниже строки должно решить проблему:
echo "get 'VIZVR_profile','md5_hash'" | hbase shell
Объяснить
Когда Вы выполняете следующую команду:
echo "get 'VIZVR_profile','md5_hash'" | "hbase shell"
echo
команда передается по каналу в следующую команду "hbase shell"
Проблема здесь, то, что нет никакой названной команды "hbase shell"
Команда hbase
с параметром shell
Удаление кавычки должно решить проблему (принимающий это hbase
находится в Вашем path
).
Примечание: Вы, возможно, должны были бы заменить hbase
в 5-й строке сценарий с full/path/to/hbase