2장. HDFS 쉘명령어
1. 파일목록 확인
[hduser@hdstudy01 hadoop]$ hadoop fs -ls
Found 1 items
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
[hduser@hdstudy01 hadoop]$ hadoop fs -lsr
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
-rw-r--r-- 1 hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output/_SUCCESS
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:16 /user/hduser/wordcount_output/_logs
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:16 /user/hduser/wordcount_output/_logs/history
-rw-r--r-- 1 hduser supergroup 13755 2017-06-09 15:16 /user/hduser/wordcount_output/_logs/history/job_201706091514_0001_1496989002626_hduser_word+count
-rw-r--r-- 1 hduser supergroup 49664 2017-06-09 15:16 /user/hduser/wordcount_output/_logs/history/job_201706091514_0001_conf.xml
-rw-r--r-- 1 hduser supergroup 2367 2017-06-09 15:16 /user/hduser/wordcount_output/part-r-00000
2. 파일용량 확인
[hduser@hdstudy01 hadoop]$ hadoop fs -ls
Found 1 items
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
[hduser@hdstudy01 hadoop]$ hadoop fs -lsr
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
-rw-r--r-- 1 hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output/_SUCCESS
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:16 /user/hduser/wordcount_output/_logs
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:16 /user/hduser/wordcount_output/_logs/history
-rw-r--r-- 1 hduser supergroup 13755 2017-06-09 15:16 /user/hduser/wordcount_output/_logs/history/job_201706091514_0001_1496989002626_hduser_word+count
-rw-r--r-- 1 hduser supergroup 49664 2017-06-09 15:16 /user/hduser/wordcount_output/_logs/history/job_201706091514_0001_conf.xml
-rw-r--r-- 1 hduser supergroup 2367 2017-06-09 15:16 /user/hduser/wordcount_output/part-r-00000
2. 파일용량 확인
[hduser@hdstudy01 hadoop]$ hadoop fs -du
Found 1 items
65786 hdfs://hdstudy01:9000/user/hduser/wordcount_output
[hduser@hdstudy01 hadoop]$ hadoop fs -dus
hdfs://hdstudy01:9000/user/hduser 65786
[hduser@hdstudy01 hadoop]$ hadoop fs -du wordcount_output
Found 3 items
0 hdfs://hdstudy01:9000/user/hduser/wordcount_output/_SUCCESS
63419 hdfs://hdstudy01:9000/user/hduser/wordcount_output/_logs
2367 hdfs://hdstudy01:9000/user/hduser/wordcount_output/part-r-00000
3. 파일내용 출력
[hduser@hdstudy01 ~]$ hadoop fs -cat wordcount_output/part-r-00000
[hduser@hdstudy01 ~]$ hadoop fs -text wordcount_output/part-r-00000
4. 디렉토리 생성
[hduser@hdstudy01 ~]$ hadoop fs -mkdir test1
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 2 items
drwxr-xr-x - hduser supergroup 0 2017-06-09 19:08 /user/hduser/test1
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
5. 업로드. 두가지는 동일함
[hduser@hdstudy01 ~]$ hadoop fs -put wordcount_output test1
[hduser@hdstudy01 ~]$ hadoop fs -copyFromLocal wordcount_output test1
6. 다운로드
[hduser@hdstudy01 ~]$ hadoop fs -get wordcount_output/part-r-00000 test1
[hduser@hdstudy01 ~]$ hadoop fs -copyToLocal wordcount_output/part-r-00000 test1
※ 2가지 동일
7. 디렉토리 다운로드
[hduser@hdstudy01 ~]$ hadoop fs -get wordcount_output wordcount_output2
[hduser@hdstudy01 ~]$ ll
합계 62600
lrwxrwxrwx. 1 hduser hduser 15 2017-06-09 14:41 hadoop -> ./hadoop-1.2.1/
drwxr-xr-x. 17 hduser hduser 4096 2017-06-09 15:14 hadoop-1.2.1
drwxrwxr-x. 4 hduser hduser 4096 2017-06-09 15:17 hadoop-data
-rw-rw-r--. 1 hduser hduser 64039798 2017-06-09 15:10 hadoop.tar.gz
-rw-rw-r--. 1 hduser hduser 2367 2017-06-09 19:12 test1
drwxrwxr-x. 3 hduser hduser 4096 2017-06-09 19:13 wordcount_output2
[hduser@hdstudy01 ~]$ ll wordcount_output2
합계 8
-rw-rw-r--. 1 hduser hduser 0 2017-06-09 19:13 _SUCCESS
drwxrwxr-x. 3 hduser hduser 4096 2017-06-09 19:13 _logs
-rw-rw-r--. 1 hduser hduser 2367 2017-06-09 19:13 part-r-00000
8. 하나의 파일로 병합해서 다운
[hduser@hdstudy01 ~]$ hadoop fs -getmerge wordcount_output/_logs/history wordcount_logs
17/06/09 19:15:44 INFO util.NativeCodeLoader: Loaded the native-hadoop library
[hduser@hdstudy01 ~]$ ll
합계 62664
lrwxrwxrwx. 1 hduser hduser 15 2017-06-09 14:41 hadoop -> ./hadoop-1.2.1/
drwxr-xr-x. 17 hduser hduser 4096 2017-06-09 15:14 hadoop-1.2.1
drwxrwxr-x. 4 hduser hduser 4096 2017-06-09 15:17 hadoop-data
-rw-rw-r--. 1 hduser hduser 2367 2017-06-09 19:12 test1
-rwxrwxrwx. 1 hduser hduser 63419 2017-06-09 19:15 wordcount_logs
drwxrwxr-x. 3 hduser hduser 4096 2017-06-09 19:13 wordcount_output2
9. 복사하기
[hduser@hdstudy01 ~]$ hadoop fs -cp conf/haddop-enc.sh conf/hadoop-env.bk
10. HDFS간 파일이동/이름변경
[hduser@hdstudy01 ~]$ hadoop fs -mv test1 test2
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 2 items
drwxr-xr-x - hduser supergroup 0 2017-06-09 19:08 /user/hduser/test2
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
11. 로컬->HDFS로 이동
※ put명령어와 유사
[hduser@hdstudy01 ~]$ hadoop fs -moveFromLocal test1 test3
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 3 items
drwxr-xr-x - hduser supergroup 0 2017-06-09 19:08 /user/hduser/test2
-rw-r--r-- 1 hduser supergroup 2367 2017-06-09 19:23 /user/hduser/test3
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
[hduser@hdstudy01 ~]$
12. 삭제명령
[hduser@hdstudy01 ~]$ hadoop fs -rm test2
rm: Cannot remove directory "hdfs://hdstudy01:9000/user/hduser/test2", use -rmr instead
※ 비어있지 않으면 삭제 안됨
[hduser@hdstudy01 ~]$ hadoop fs -rmr test2
Deleted hdfs://hdstudy01:9000/user/hduser/test2
[hduser@hdstudy01 ~]$ hadoop fs -rmr test*
Deleted hdfs://hdstudy01:9000/user/hduser/test3
※ 비어있지 않아도 삭제가능
13. 디렉토리 생성 파일개수/파일용량 제한
[hduser@hdstudy01 ~]$ hadoop fs -count wordcount_output
3 4 65786 hdfs://hdstudy01:9000/user/hduser/wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -count -q wordcount_output
none inf none inf 3 4 65786 hdfs://hdstudy01:9000/user/hduser/wordcount_output
14. 파일의 마지막 부분 확인
[hduser@hdstudy01 ~]$ hadoop fs -tail wordcount_output/part-r-00000
※ 마지막 2KB 를 확인, -f 옵션시 갱신될때마다 출력
15. 허가권 변경
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 1 items
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -chmod 777 wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 1 items
drwxrwxrwx - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -chmod a-rwx wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 1 items
d--------- - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
16. 소유권 변경
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 1 items
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -chown testuser:testusergroup wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 1 items
drwxr-xr-x - testuser testusergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
17. 소속그룹 변경
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 1 items
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -chgrp usergroup wordcount_output
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 1 items
drwxr-xr-x - hduser usergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
18. 빈파일 생성
[hduser@hdstudy01 ~]$ hadoop fs -touchz newFile
[hduser@hdstudy01 ~]$ hadoop fs -ls
Found 2 items
-rw-r--r-- 1 hduser supergroup 0 2017-06-09 19:45 /user/hduser/newFile
drwxr-xr-x - hduser supergroup 0 2017-06-09 15:17 /user/hduser/wordcount_output
19. 통계정보 조회
%b : 블록단위 파일 크기
%n : 디렉토리/파일명
%o : 블록 크기
%r : 복제된 파일 개수
%y : 디렉토리 및 파일 갱신일자 연, 월, 일, 시, 분, 초 형식으로 출력
%Y : 디렉토리 및 파일 갱신일자를 유닉스 Time Stamp 형식 출력
[hduser@hdstudy01 ~]$ hadoop fs -stat %b-%n-%o" "%r" "%y" "%Y wordcount_output
0-wordcount_output-0 0 2017-06-09 06:17:03 1496989023005
20. 설정파일의 복제데이터 개수 설정
[hduser@hdstudy01 ~]$ hadoop fs -setrep -w 1 wordcount_output/part-r-00000
Replication 1 set: hdfs://hdstudy01:9000/user/hduser/wordcount_output/part-r-00000
Waiting for hdfs://hdstudy01:9000/user/hduser/wordcount_output/part-r-00000 ... done
[hduser@hdstudy01 ~]$ hadoop fs -stat %r wordcount_output/part-r-00000
1
21. 파일형식 확인
[hduser@hdstudy01 ~]$ hadoop fs -test -e wordcount_output/part-r-00000
※제대로 동작하지 않음. 알아두기만 하기 바람.
22. 휴지통비우기
[hduser@hdstudy01 ~]$ hadoop fs -expunge
댓글
댓글 쓰기