FS Shell은 HDFS와 직접 상용작용할 뿐만 아니라 WebHDFS, AmazonS3 Azure WASB 등 하둡에서 지원하는 다른 파일시스템도 포함되어있다.
FS Shell은 " bin/hadoop fs <args>" 에 의해 호출된다.
HDFS가 이미 사용되고 있다면 hdfs dfs는 동의어이다.(=hadoop fs)
* 'hadoop fs'와 'hdfs dfs' 명령어차이는 전자는 다른 응용프로그램(WebHDFS, AmazonS3 Azure 등) 에서도 사용하는 포괄적인 명령어고 후자는 HDFS에서만 사용할 수 있는 명령어이다.
cat
hadoop fs -cat /user/hive/text1.txt
: 해당 파일내용을 stdout(콘솔) 출력한다.
chgrp
hadoop fs -chgrp [-R] 변경할그룹 변경할 파일or디렉토리명
: 디렉토리 또는 파일의 소유 그룹을 변경한다. 옵션 -R은 디렉토리 하위모든 파일까지 변경.
chmod
hadoop fs -chmod 744 hdfs파일or디렉토리먕
: hdfs파일의 권한을 변경한다.
chown
hadoop fs -chown 변경할소유자 hdfs파일or디렉토리명
: 파일 소유권을 변경한다. 옵션 -R은 디렉토리 하위모든 파일까지 변경.
copyFromLocal / moveFromLocal / appendToFile / put
hadoop fs -copyFromLocal <로컬파일경로> <hdfs파일경로>
: 로컬파일을 hdfs파일시스템에 복사/이동 시킨다.
copyToLocal / moveToLocal
hadoop fs -copyFromLocal <hdfs파일경로> <로컬파일경로>
: hdfs파일을 로컬경로에 복사/이동 시킨다.
cp / mv
hadoop fs -copyFromLocal <이동시킬 hdfs파일경로> <이동할 hdfs파일경로>
: hdfs파일을 지정한 hdfs경로에 복사/이동 시킨다.
count
hadoop fs -count [-q] [-h] [-v] [t (storage type) ] [-u] <hdfs경로>
: hdfs경로의 파일 및 바이트 수, 디렉토리수 할당량 등을 출력한다.
- -q : 할당량 함께 표시
- -u : 할당량과 사용량 표시
- -t : -q, -u옵션과 사용되며 저장소 유형에 대한 할당량과 사용량 표시
- -h : 파일크기를 사람이 읽을 수 있는 형식으로 표시
- -v : 헤더라인을 표시
createSnapshot
hdfs dfs -createSnapshop <hdsf경로> <snapshot이름>
: hdfs 스냅샷 생성
renameSnapshot
hdfs dfs -createSnapshop <hdsf경로> <old snapshot이름> <new snapshot이름>
: hdfs 스냅샷 파일이름 변경
deleteSnapshot
hdfs dfs -deleteSnapshot<hdsf경로> <snapshot이름>
: hdfs 스냅샷 삭제
* 스냅샷 관련 참조내용
: https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HdfsSnapshots.html
df
hadoop fs -df <hdfs경로>
: 할당가능량(free space)를 표시
du
hadoop fs -du [옵션] <hdfs경로>
: 지정된 경로의 파일 및 디렉토리 길이를 표시
- -s : 개별파일이 아닌 전체 파일길이의 요약이 표시.
- -h : 사람이보기편한 방식으로 표시.
- -v : 열이름을 헤드라인으로 표시.
find
hadoop fs -find / -name test -print ( hadoop fs -find <path> -name filename <expression> )
: 파일을 찾는다.
getmerge
hadoop fs -getmerge -nl <hdfs경로> <로컬경로>
: hdfs경로 안에 있는 파일들을 합병한 결과파일을 로컬경로에 생성한다.
head / tail
hadoop fs -head <hdfs경로>
: 지정된 파일의 앞부분/뒷부분을 stdout출력한다.
ls
hadoop fs -ls <hdfs경로>
: 해당경로의 파일or디렉토리를 조회한다.
mkdir
hadoop fs -mkdir <생성할 디렉토리명>
: 디렉토리를 생성
rm
hadoop fs -rm [옵션] <hdfs파일or디렉토리>
: 파일or디렉토리 삭제
- - f : 진단메세지 무시
- - R : 디렉토리와 하위파일모두 삭제
touch
hadoop fs -touch <pathname>
: 지정경로의 파일의 수정시간을 현재시간으로 업데이트. 파일이 없으면 길이0의 파일로 생성
touchz
hadoop fs -touchz <hdfs경로>
: 길이 0의 파일을 생성, 기존 파일이 있다면 오류
truncate
hadoop fs -truncate <파일길이> <hdfs경로>
: 지정된 경로의 지정한 길이로 파일을 잘라낸다.
댓글 없음:
댓글 쓰기