Загрузка файла с квадратными скобками в его имени в Had oop через had oop fs -put - PullRequest
1 голос
/ 31 января 2020

У меня есть файл с квадратной скобкой в ​​названии. Этот файл необходимо загрузить в Had oop через had oop fs -put. Я использую MapR 6.

Следующие варианты приводят к путу: неожиданное URISyntaxException

hadoop fs -put aaa[bbb.txt /destination
hadoop fs -put aaa\[bbb.txt /destination
hadoop fs -put "aaa[bbb.txt" /destination
hadoop fs -put "aaa\[bbb.txt" /destination

Ответы [ 2 ]

1 голос
/ 31 января 2020

Если бы oop команды, такие как hadoop fs -put, обычно плохо выполняли экранирование имен.

Это плохие новости.

Хорошая новость заключается в том, что с MapR вы можете избегайте всего этого и просто скопируйте файл в локальное монтирование файловой системы MapR, используя стандартные команды Linux, такие как cp. Нет необходимости «загружать» что-либо, потому что MapR чувствует и действует как обычная файловая система. Вы можете получить необходимое монтирование, используя NFS или драйверы POSIX.

Большим преимуществом этого является то, что вы получаете преимущество зрелости реализаций команд Linux. То есть эти команды (и оболочка) правильно цитируют, и вы можете получить желаемый результат относительно тривиально. Просто используйте одинарные кавычки и покончите с этим.

1 голос
/ 31 января 2020

вы пробовали "aaa% 5Bbbb.txt"?

...