백괴대학:본관/PHP언어 강의/0.5

백괴사전, 내용 없는 백과사전
이동: 둘러보기, 찾기
이 문서는 겁나게 진지하니 감수하고 읽으실 분들만 아래로 스크롤을 내리십시오.
당신의 뇌가 급증하는 정보량을 이기지 못하고 폭주하는 모습 이 문서는 그 내용이 위뷁처럼 진지하고 어려워서, 읽는 순간 다음과 같은 문제가 발생할 수 있습니다.
다음 글을 읽는 순간 가 급증하는 정보량을 이기지 못하고 타버릴 것이며,
컴퓨터마저 제 기능을 못하게 될 것입니다.

일단 저는 우분투 를 씁니다. 그러므로 우분투에서 개발 환경에 대해 설명하죠.

[편집] 우분투/데비안 계열

우분투에서는 따로 구축할 필요가 없습니다. 일단 터미널을 키시고 다음과 같은 내용을 입력합니다. 자신이 입력할 것은 < 출력은 > 로 표시합니다. vim 이 설치되어 있다면 아래 내용은 건너 뜁니다. 설치되어 있는지 안 되어 있는지 확인하기 위해선 다음명령을 입력합니다.

> vim  -version
< VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Mar 19 2009 15:31:01)

만약 출력이 안되면 아래 내용으로 넘어갑니다.

< su root
> 암호:
< 암호 입력( 암호가 설정되있지 않을경우 sudo passwd root 명령으로 root 암호 설정 )
> apt-get install vim
< 패키지 목록을 읽는 중입니다... 완료
< 의존성 트리를 만드는 중입니다       
< 상태 정보를 읽는 중입니다... 완료
< 제안하는 패키지:
<   ctags vim-doc vim-scripts
< 다음 새 패키지를 설치할 것입니다:
<   vim
< 0개 업그레이드, 1개 새로 설치, 0개 지우기 및 4개 업그레이드 안 함.
< 854k바이트 아카이브를 받아야 합니다.
< 이 작업 후 1708k바이트의 디스크 공간을 더 사용하게 됩니다.
< 받기:1 http://kr.archive.ubuntu.com jaunty/main vim 2:7.2.079-1ubuntu5 [854kB]
< 내려받기 854k바이트, 소요시간 1초 (701k바이트/초)
< debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable
< 전에 선택하지 않은 vim 패키지를 선택합니다.
< (데이터베이스 읽는중 ...현재 131218개의 파일과 디렉터리가 설치되어 있습니다.)
< vim 패키지를 푸는 중입니다 (.../vim_2%3a7.2.079-1ubuntu5_i386.deb에서) ...
< vim (2:7.2.079-1ubuntu5) 설정하는 중입니다 ...

설치가 됐는지 확인하면 그러면

<vim
> ~                                                                               
> ~                                                                               
> ~                                                                               
> ~                                                                               
> ~                                빔 - 향상된 Vi                                 
> ~                                                                               
> ~                                  판 7.2.79                                    
> ~                           by Bram Moolenaar et al.                            
> ~                   빔은 소스가 열려 있고 공짜로 배포됩니다                     
> ~                                                                               
> ~                   우간다에 사는 가난한 아이를 도와주세요!                     
> ~            이에 대한 정보를 보려면    :help iccf<엔터>       입력             
> ~                                                                               
> ~            끝내려면                   :q<엔터>               입력             
> ~            온라인 도움말을 보려면     :help<엔터> 또는 <F1>  입력             
> ~                type  :help version7<Enter>   for version info                 
> ~                                                                               
> ~                                                                               
> ~                                                                               
> ~                                                                               
> ~

을 입력합니다.

vim 사용법을 익혀봅시다. 일단 입력하면 텍스트 모드에 입력됩니다. 그러지 않기 위해서는 일단 콜론(:)을 눌러봅시다. 일단 키자마자 가장 중요한 명령을 알려줍니다. q입니다. 이것은 콘솔창을 나갑니다.

파일을 여는법은 e [파일 이름] 입니다. 이렇게 하면 파일을 열수 있습니다. 새 파일은 newfile 입니다. 예)e /home/user/바탕화면/p5.php

파일을 저장하는법은 w[?파일 이름] 입니다. 이렇게하면 파일을 저장 할 수 있습니다.

검색은 /,? [검색할 내용] 입니다. 이걸로 검색을 합니다.

편집 모드로 들어가는 방법은 i, 콘솔모드로 들어가는 방법은 ESC 후 : ( 콜론 ) 입니다/

커서 이동은 다음과 같습니다. 기본적으로 hljk(위 왼쪽 오른쪽 아래) 를 씁니다.

h
한칸 왼쪽으로 이동
l
한칸 오른쪽으로 이동

j
한줄 아래로 이동
k
한줄 위로 이동

자세한거는 찾아보시고. ftp 사용법에 대해서 알려드리겠습니다. 일단 터미널에 ftp 라고 입력하면

< ftp
> >ftp

라는 문자열이 나옵니다. 그리고 ftp 에서 명령어가 있습니다. 내용은 다음과 같습니다.(정리가 안됐네요, 죄송합니다.)

ftp> ! [command]
잠시 셸로 빠져나간다.
셸을 종료하면 다시 ftp로 돌아간다.
 
?, help
ftp> ? [command-name]
help 내용을 본다.
?만 입력하면 모든 명령어 목록이 출력되며, 명령어를 파라미터로 주면 해당 명령어의 help 내용을 출력한다.
 
account
ftp> account [passwd]
remote 서버로 account 정보를 보낸다.
 
append
ftp> append [local-file [remote-file]]
remote 서버에 파일이 존재할 경우 이어붙인다.
remote-file 명을 입력하지 않으면 local-file 명으로 지정된다.
 
ascii
ftp> type ascii
전송 모드를 ascii로 설정한다.
 
binary, image
ftp> type [binary/image]
전송 모드를 binary로 설정한다.
 
bell
ftp> bell [on/off]
명령어 실행 완료 시 삐 소리 출력 여부 설정한다.
 
bye, quit
ftp 연결을 끊고 종료한다.
case
mget 명령 시의 원격 서버 파일명 대소문자 구분을 설정 (on/off toggle, default: off)
(on이면) remote 서버의 파일들을 mget으로 가져올 때, 대소문자 구분없이 모두 소문자로 가져온다.
 
 
cd
ftp> cd [remote-directory]
서버의 디렉터리를 변경
 
cdup
서버의 디렉터리를 한단계 전으로 변경 (cd .. 와 동일)
 
chmod
ftp> chmod [mode remote-file]
파일의 권한을 변경
 
close, disconnect
ftp 연결을 끊는다.
ftp 연결만 끊으며 ftp를 종료하지는 않는다. 정의한 매크로는 모두 삭제된다.
 
cr
텍스트 파일 전송시 엔터코드(Carriage Return) 유무를 조정. (on/off toogle, default: on)
 
delete
ftp> delete [remote-file]
remote 파일을 삭제한다.
빈 디렉터리도 삭제할 수 있다.
 
debug
디버깅 모드를 설정한다. (on/off toggle 및 debug 레벨 설정)
 
dir, ls
ftp> dir [remote-directory] [local-file]]
디렉터리를 출력한다.
local 파일을 파라미터로 줄 경우, dir 명령의 결과를 파일로 저장할 수 있다.
 
form
파일 전송 포맷을 설정한다.
(non-print 포맷만 지원)
 
get, recv
ftp> get [remote-file [local-file]]
remote 파일을 local 서버로 전송받는다.
local 파일명을 파라미터로 줄 경우, 전송받은 파일의 파일명을 지정할 수 있다.
 
glob
local 파일이름의 메타문자 확장을 설정한다. (on/off toggle, default: on)
 
hash
1024 바이트 전송 시마다 '#' 기호를 출력한다.
hash 기능 사용 시 퍼포먼스 저하
 
idle
ftp> idle [seconds]
remote 서버 연결의 비활성화 시간을 설정/확인한다.
초 단위로 파라미터를 줄 경우, 비활성화 시간을 설정하며, 파라미터가 없는 경우 현재 설정 상태를 출력한다.
설정된 시간이 지나면 ftp 접속이 끊어진다. (30~7200초 설정 가능)
 
lcd
ftp> lcd [local-directory]
local 디렉터리를 변경한다.
파라미터로 주어진 디렉터리로 local 디렉터리를 변경하며, 파리미터가 없는 경우 local home 디렉터리로 변경
 
macdef
ftp> macdef [macro-name]
매크로를 정의
명령어 실행 후 다음 라인부터의 내용이 매크로로 저장
빈 라인(내용없이 엔터 입력)이 입력되면 매크로 저장이 종료
최대 4096개의 문자로 된 16개의 매크로를 정의할 수 있으며, 정의된 매크로는 close 명령어로 종료될 때까지 유지
 
$
ftp> $ [macro-name]
매크로를 실행한다.
 
macdef 명령어로 먼저 매크로를 정의해 놓은 후, 해당 매크로를 실행
반복적인 작업이나 일괄작업 등에 쓰임
 
mdelete
ftp> mdelete [remote-files]
다수의 파일을 삭제한다.
 
mdir
ftp> mdir [remote-files local-file]
다수의 디렉터리/파일의 출력 결과를 local 파일로 저장한다.
 
mls
ftp> mls [remote-files local-file]
다수의 디렉터리/파일의 간단한 출력 결과를 local 파일로 저장한다.
 
mget
ftp> mget [remote-files]
다수의 remote 파일을 전송받는다.   
 
mkdir
ftp> mkdir [directory-name]
서버에 디렉터리를 생성한다.
  
mode
파일 전송 모드를 설정한다.
제공되는 모드는 stream 뿐이다.
 
modtime
ftp> modtime [remote-file]
파일의 최종 수정시각을 출력한다.
 
mput
ftp> mput [local-files]
다수의 local 파일을 서버로 전송한다.
 
newer
ftp> newer [remote-file [local-file]]
파일을 get 하되, local 파일보다 나중인 경우에만 가져온다.
local 파일이 없는 경우 그냥 get 한다.
 
nlist
ftp> nlist [remote-directory] [local-file]
디렉터리의 파일 목록을 출력한다.
디렉터리명을 지정할 수 있으며, 지정하지 않으면 현재 디렉터리가 출력된다.
 
open
ftp> open [server-host] [port-number]]
서버에 접속한다.
ftp 접속이 끊어졌을 경우 ftp를 종료하지 않고 open 명령어로 재접속 가능
 
prompt
multiple 명령어 실행 시 응답 여부를 설정한다. (on/off toggle, default: on)
off로 설정할 경우, multiple 명령어(mget, mput 등) 실행시 y/n 선택없이 강제로 진행된다. (모두 y)
 
sendport
data 연결을 위해 PORT 명령어 사용 여부를 설정한다. (on/off toggle, default: on)
off로 설정할 경우 명령어 실행에 delay가 생길 수 있다.
 
passive
passive 모드 설정을 변경한다. (on/off toggle, default: off)
 
put, send
ftp> put [local-file] [remote-file]]
서버로 local 파일을 전송한다.
파일명을 파라미터로 줄 경우, remote 서버로 전송되는 파일명을 지정할 수 있다.
 
pwd
서버의 현재 디렉터리를 출력한다.
 
reget
ftp> reget [file-name]
파일의 끝에 이어서 get 한다.
파일을 get 하던 중 중지된 경우, 처음부터 다시 받지 않고 reget 명령어를 이용해 이어받을 수 있다.
 
rstatus
ftp> rstatus [file-name]
서버의 상태를 출력한다.
 
rhelp
ftp> rhelp [command-name]
서버로부터 help 정보를 얻어온다.
ftp 프로그램 상의 명령어가 아닌 순수 ftp 프로토콜의 명령어에 대한 help 정보이다.
 
rename
ftp> rename [from-name [to-name]]
서버의 파일, 디렉터리의 이름을 변경한다.
 
rmdir
ftp> rmdir [directory-name]
빈디렉터리를 삭제한다.
 
runique
local 파일의 unique 저장 설정을 변경한다. (on/off toggle, default: off)
만약 remote 파일을 get/mget으로 가져올 때, local 서버에 같은 이름의 파일이 존재하는 경우
해당off로 설정되어 있으면 덮어씌기하고, on으로 설정되어 있으면 파일명 끝에 .1 과 같이 숫자 붙는다.
 
size
ftp> size [file-name]
파일의 사이즈를 출력한다.
 
status
현재 ftp 접속 상태 정보를 출력한다.
 
struct
ftp> struct [struct-name]
파일 전송 struct를 설정한다.
 
system
서버의 OS 타입을 출력한다.
 
tenex
파일 전송 모드를 tenex로 설정한다.
 
type
ftp> type [type-name]
파일 전송 모드를 설정
 
umask
ftp> umask [newmask]
서버의 umask를 설정
 
verbose
verbose 모드를 설정한다. (on/off toggle, default: on)
on일 경우, 파일 전송 완료 시 전송 통계 내역(전송size, 소요시간, 초당 속도 등)을 출력한다.

일단 이런식으로 ftp 와 vim 사용법에 대해서 알려드렸습니다. 웹서버 구축은 [1] 를 참고하세요

[편집] 윈도우

윈도우에서는 EditPlus 를 쓰는게 편한데. 이것은 FTP 까지 다 알아서 해줍니다.

웹서버 구축은 [2] 을 참고하세요

개인 도구
이름공간 목록 보기/편집
변수
행위
차림표
아랫방
자매 프로젝트
유지보수
커뮤니티
도구 모음