FTP 명령어

Posted 2013. 9. 27. 09:32


출처 : http://blog.naver.com/chowstephen/10112328213


FTP에서 파일 송수신을 위해 기본적으로 필요한 명령어

명령어

내용

open

호스트 이름이나 IP 주소를 사용하여 접속한다.

close

현재 접속중인 연결을 끊고 ftp 명령어 모드로 돌아간다.

quit

ftp 사용을 그만하고 셀 상태로 돌아간다.

ascii

ASCII 형태로 파일을 주고받는다

binary

Binary 형태로 파일을 주고받는다.

ls

ftp 싸이트의 디렉토리 파일 목록을 보여준다.

pwd

ftp 싸이트에서 현재 자신이 위치한 디렉토리의 경로를 나타내준다.

cd

ftp 싸이트의 디렉토리를 변경한다.

lcd

로컬(자신이 ftp 명령어를 실행시킨 시스템) 디렉토리 위치를 변경한다.

(m)get

ftp 싸이트로부터 (복수개의) 파일을 전송받는다.

!

접속을 유지한 상태로 자신의 시스템의 셀 프롬프트로 빠져 나온다.

(m)put

자신의 시스템에 있는 (복수개의) 파일을 ftp 싸이트로 전송한다.

prompt

복수개의 파일 전송시 파일마다 사용자에게 전송여부에 대한 확인을 물어온다.

hash

파일 전송 상태를 # 문자를 통해서 보여준다.

?

사용할 수 있는 명령어를 보여준다.

help

도움말을 보여준다.


디렉토리 생성
ftp> mkdir public 
호스트 컴퓨터 상의 현재 디렉토리 밑에 public 이란 디렉토리가 생김

디렉토리 삭제
ftp> rmdir public 
디렉토리 내용물을 다 지운 후 디렉토리를 지워야 지워짐

화일/디렉토리 이름 변경
ftp>ren my.html your.html

화일 한 개 삭제
ftp> del my.html

화일 여러개 삭제
ftp> mdel *.html 
*.html
패턴의 모든 화일 삭제

ftp> mdel letter??.html 
?
는 낱개 문자에 대한 와일드 카드


화일 업로드
ftp> binary

바이너리 화일 전송 옵션. 모든 화일 전송시 무조건 설정하는 게 좋음. 이것을 하지 않으면 압축/그림 화일이 깨져 전송됨


ftp> put local.html home.html 
PC의 현재 디렉토리 밑의 local.html을 호스트 상의 현재 디렉토리에 home.html로 업로드


여러 개의 화일 업로드
ftp> prompt

대화식 모드 해제, 여러개 화일 업로드시 매 파일마다 업로드 여부를 확인하게 되어 있는데 이를 취소하는 역할을 함. 토글 명령이므로 두번 하면 다시 원상 복귀


ftp> binary

바이너리 화일 전송 옵션 모든 화일 전송시 무조건 설정하는 게 좋음)


ftp> mput *.gif 
현재의 PC 디렉토리 밑의 *.gif 를 엎로드


화일 한 개 다운로드
ftp> binary
바이너리 화일 전송 옵션 모든 화일 전송시 무조건 설정하는 게 좋음


ftp> get remote.html localpc.html 
remote.html
PC localpc.html 로 저장 (localpc.html 생략하면 remote.html 로 저장)


화일 여러 개 다운로드
ftp> prompt

대화식 모드 해제, 여러개 화일 다운로드시 매 화일마다 다운로드 여부를확인하게 되어 있는데 이를 취소하는 역할을 함. 토글 명령이므로 두번 하면 다시 원상 복귀 

ftp> binary

바이너리 화일 전송 옵션 모든 화일 전송시 무조건 설정하는 게 좋음

ftp> mget *.html



디렉토리 보기
ftp> dir

리모트 디렉토리 이동
ftp> cd /usr/local

ftp> cd ..

상위 디렉토리 이동

로컬 디렉토리 이동(Local CD)
ftp> lcd c:\netscape\program

ftp> lcd /home/User


MSDOS, UNIX
명령 실행

ftp> !mkdir LOCALDIR 
이것은 자신의 홈 디렉토리밑에 LOCALDIR 디렉토리 생성

hash 명령
ftp> hash 
이렇게 하면 화일 엎/다운로드시 진행 결과를 보여준다. 화일 업/다운로드시 "binary" 명령을 반드시 실행하시오. 이것을 안하면 binary 화일 내의 CR LF LF로 바꾸어 전송하게 되므로 화일이 깨진다. 주의!!


1. ftp
서버에 접속하기

ftp 100.10.1.1 또는 ftp ftp.test.com


2. ftp
사용 중지

ftp> bye


3. ftp
서버에 접속하여 디렉토리 내용 확인하기

ftp> pwd

현재 디렉토리 확인


ftp> ls -al
또는 dir

디렉토리 내용보기


4. ftp
사용중 현재 내컴퓨터의 디렉토리 확인

ftp> !dir


5. 전송 모드 변경

전송 모드라 하면 파일을 전송할 때 binary 또는 ascii 모드를 말하며 일반 txt 파일은 ascii로 전송하고 실행 파일 또는 압축 파일은 binary 로 전송하여야 함. 만일 이를 어길시는 특히 txt 파일의 내용이 이상하게 됨.

ftp> bi 또는 binary
binary
모드로 변경됨

ftp> as 또는 ascii 
ascii
모드로 변경됨

6. 한 개의 파일을 보내기

ftp> !dir setup.txt

보낼 파일을 확인함

ftp> as

ftp> put  setup.txt

파일을 보냄

ftp> dir setup.txt

잘 보냈는지 확인함


7. 한개의 파일을 가져오기

ftp> ls -al

가져올 파일을 확인함

ftp> bi

binary 모드로 변경됨

ftp> get  a.o

ftp> !

! 만 사용하여 Local Host로 잠시 빠져나간뒤 제대로 가져왔는지 확인

exit

다시 ftp 모드로 바뀜


8.
여러 개의 파일을 보내고 받기

여러 개의 파일을 보내려면 mput을 사용
ftp> mput diff*    <-- diff
로 시작되는 모든화일을 보냄
mput diff1?         <--
이름을 diff1 으로 하겠냐고 물음 (엔터)
mput diff2?         <-- diff2
를 보냄
mput diffrt?         <-- diffrt
를 보냄

여러 개의 파일을 받으려면 mget을 사용

ftp> mget  *       <-- 모든 파일을 보냄
mget cca?         <-- cca
를 이름그대로 받겠는가?
mget ts? ii          <-- ts
파일을 ii 란 이름으로 받음
mget aa?           <-- aa
를 받음

여러 개의 파일을 보내고 받을 때 파일 하나하나 '?' 로 물어보는 것이 정말 짜증날 때가 있다. 물어보지 않고 단번에 모든 파일을 받고 보내고자 할 경우 prompt라고 기입하면된다.

ftp> prompt
Interactive mode Off

ftp> prompt
Interactive mode On


9. 명령이 기억이 나지 않으면 ? 명령

ftp> ?

ftp> ? mget

리눅스 ftp 비밀번호 변경

root 비밀번호는 super user에서만 변경가능하고 ftp 비밀번호가 따로 있는 것은 아니다. /etc passwd라는 file이 있는데 여기에 각 사용자들의 user id가 있다. 비밀번호 변경은 각 user마다 따로 해 주어야 한다. 변경 방법은 root login 하여..

$ passwd 사용자id