리눅스 쉘 스크립팅의 기본적인 내용들을 정리해보았다.

기본적인 HDFS의 파일을 조작하기 위해서 hadoop fs 또는 hdfs dfs 커맨드를 사용한다.

bin/hdfs dfs
hadoop fs

ls

디렉토리 확인을 위한 명령어로 현재 디렉토리 내 모든 파일과 하위 디렉토리를 출력한다.

hadoop fs -ls /
  • / : 하둡의 홈디렉토리 위치
  • lsr은 ls -R과 같은 명령어



mkdir

새로운 디렉토리를 생성하는 명령어. 당연하지만 이렇게 만든 폴더가 실제 로컬에 생성되는 것이 아니라 HDFS에 생성된다.

hadoop fs -mkdir /hdfs-user # hdfs-user 폴더 생성
hadoop fs -ls / # 로 확인



touchz

빈 파일을 생성하는 명령어.

bin/hdfs dfs -touchz /hdfs-user/test.txt # test.txt 파일 생성



put

로컬 시스템에 있는 특정 파일이나 디렉토리 내 모든 파일들을 하둡 파일 시스템으로 복사하는 명령어.

hadoop fs -put ./etc/xml /user/etc/ # 앞은 로컬 주소, 뒤는 HDFS 폴더 위치


  • copyFromLocal 명령어와 비슷하나 이 명령어가 조금 더 제한적.
bin/hdfs dfs -copyFromLocal



get

put과 의미상 반대로 하둡 파일 시스템으로부터 로컬 시스템으로 파일을 복사하는 명령어.

hadoop fs -get /user/etc/apt/sources.list /tmp # 앞은 HDFS 폴더 위치, 뒤는 로컬 주소


  • copyToLocal 명령어와 비슷하나 이 명령어가 조금 더 제한적.
bin/hdfs dfs -copyToLocal /user/hadoop-test.txt /tmp



cat

파일의 내용을 stdout(화면 출력)으로 보여주는 명령어.

bin/hdfs dfs -cat /user/hadoop-test.txt



mv

HDFS 내에서 파일을 이동하는 명령어.

hadoop fs -mv /user/etc/apt /user/etc/xml # 앞은 이동 전 주소, 뒤에는 이동 후 주소



cp

HDFS 내에서 파일을 복사하는 명령어.

bin/hdfs dfs -cp /user/etc/xml/apt /user/etc



rm

파일 또는 디렉토리 삭제를 위한 명령어.

hadoop fs -rm -r /user/etc/xml/apt # -r 옵션 추가하면 디렉토리 삭제 가능



chmod

읽기,삭제,수정에 대한 권한을 수정할 수 있는 명령어.

hadoop fs -chmod -r /user/etc/xml # read 접근 불가
hadoop fs -chmod -R 755 /user/etc/xml # read 접근 가능



chown

owner를 변경할 때 사용하는 명령어.

hadoop fs -chown root /user/etc