FileSystem shell

Содержание

Обзор

Команды файловой системы (File System, FS) — это различные shell-подобные команды, которые напрямую взаимодействуют с Hadoop Distributed File System (HDFS), а также с другими файловыми системами, которые поддерживает Hadoop, такими как локальная файловая система, WebHDFS, S3 FS и другими.

Использование FS shell показано ниже:

$ bin/hadoop fs <args>

Все команды оболочки FS принимают в качестве аргументов URI пути Формат URI: scheme://authority/path. Схема для HDFS — hdfs, а схема для локальной FS — file. Указание схемы и прав доступа необязательно. Если они не указаны, используется схема по умолчанию, заданная в конфигурации. Файл или каталог HDFS, например /parent/child, может быть указан как hdfs://namenodehost/parent/child или просто как /parent/child (если в конфигурации задан адрес hdfs://namenodehost).

Большинство команд FS shell ведут себя подобно соответствующим командам Unix. Различия описаны для каждой из команд. Информация об ошибках отправляется в stderr, а вывод — в stdout.

Если используется HDFS, то команда hdfs dfs будет синонимична.

Можно использовать относительные пути. Для HDFS текущим рабочим каталогом является домашний каталог HDFS /user/<username>, который часто приходится создавать вручную. К домашнему каталогу HDFS также можно обращаться неявно, например, при использовании папки HDFS trash — каталог .Trash в домашнем каталоге.

Команды

Команда Описание

appendToFile

Добавляет данные из источника на локальной файловой системе в конечный файл

cat

Выводит содержимое файла в stdout

checksum

Возвращает информацию о контрольной сумме файла

chgrp

Изменяет группу файлов

chmod

Изменяет права доступа к файлам

chown

Изменяет владельца файлов

copyFromLocal

Идентична команде put

copyToLocal

Идентична команде get

count

Возвращает количество каталогов и файлов

cp

Копирует файлы из источника в место назначения

createSnapshot

Создаёт моментальный снимок snapshottable-каталога

deleteSnapshot

Удаляет моментальный снимок из snapshottable-каталога

df

Отображает свободное пространство

du

Отображает размеры файлов и каталогов

dus

Отображает информацию о размере файлов

expunge

Постоянное удаление файлов в контрольных точках старше порога сохранения из каталога корзины и создание новой контрольной точки

find

Находит все файлы, соответствующие указанному выражению, и применяет к ним выбранные действия

get

Копирует файлы в локальную файловую систему

getfacl

Отображает ACL файлов и каталогов

getfattr

Отображает имена и значения расширенных атрибутов (если они есть) для файла или каталога

getmerge

Принимает исходный каталог и конечный файл в качестве входных данных и объединяет файлы в локальный целевой файл

head

Выводит первый килобайт файла в stdout

help

Выводит справочную информацию об использовании всех команд

ls

Возвращает статистику по файлу или список дочерних элементов для каталога

lsr

Рекурсивная версия ls

mkdir

Принимает URI-пути в качестве аргумента и создает каталоги

moveFromLocal

Идентична команде put

moveToLocal

Перемещает файл/каталог из HDFS в локальную файловую систему

mv

Перемещает файлы из источника в пункт назначения

put

Копирует исходные файлы из локальной в конечную файловую систему

renameSnapshot

Переименовывает моментальный снимок

rm

Удаляет файлы, указанные в качестве аргументов

rmdir

Удаляет каталог

rmr

Рекурсивная версия команды rm

setfacl

Устанавливает ACL для файлов и каталогов

setfattr

Устанавливает имя и значение расширенного атрибута для файла или каталога

setrep

Изменяет коэффициент репликации файла

stat

Выводит статистику о файле/каталоге по заданному адресу

tail

Выводит последний килобайт файла в stdout

test

Запускает тестирование

text

Принимает исходный файл и выводит его в текстовом формате

touch

Обновляет время доступа и модификации файла, указанного URI, до текущего времени

touchz

Создаёт пустой файл

truncate

Уменьшает (truncate) все файлы, которые соответствуют указанному шаблону файла, до указанной длины

usage

Выводит справочную информацию для отдельной команды

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней