본문 바로가기

프로그래밍

Vi에디터 단축 키 Vi는 처음 사용하는 유저에게는 상당히 불편한 툴이지만 익숙해지면 그 어떤 GUI 툴보다 빠른 편집 속도를 자랑하는 에디터이다. 오늘은 vi에디터를 빠르게 사용할 수 있는 단축 키에 대해 알아보자. 1.커서 이동 관련 h 왼쪽으로 한 칸 이동 j 한 줄 아래로 이동 k 한 줄 위로 이동 l 오른쪽으로 한 칸 이동 w 한 단어 오른쪽으로 이동 b 한 단어 왼쪽으로 이동 엔터 한 줄 아래로 이동 백 스페이스(←) 한 칸 왼쪽으로 이동 스페이스 바 한 칸 오른쪽으로 이동 H 화면의 맨 위로 이동 M 화면의 중간으로 이동 L 화면의 맨 아래로 이동 :$ 마지막 줄로 이동 2.삽입 명령 a 커서 오른쪽에 문자 삽입 i 커서 왼쪽에 문자 삽입 A 커서가 있는 행 오른쪽 마지막에 문자 삽입 I 커서가 있는 행 왼쪽 .. 더보기
MySQL에서 Foreign Key 만들기 MySQL에서는 그냥 아무 생각없이 스키마를 만들게 되면 Foreign Key를 만들 수가 없다. 그래서 오늘은 MySQL에서 Foreign Key를 만드는 방법을 알아보자. 먼저 foreign key의 reference가 될 스키마를 만든다. 여기에서는 테이블 이름은 test_student로 했고, 학번이 PK이다. 스키마를 생성할 때에 Storage Engine을 MyISAM이 아닌 InnoDB로 해줘야 한다. 만약 MyISAM으로 스키마를 만들 경우에는 FK가 지원되지 않는다고 한다. 다음으로 foreign key가 존재할 스키마를 만든다. 이 때에도 Storage Engine을 InnoDB로 하고, 스키마의 이름은 test_foreign으로 해주었다. 그리고 중요한 것이 FK로 할 속성의 경우, .. 더보기
리눅스 shell에서 mySQL의 instance가져오기 MySQL에 있는 DB 인스턴스를 파일로 저장하고 싶은 경우가 있을 것이다. 그럴 경우에는 다음의 명령을 사용해 보자. echo "select * from 테이블 이름" | mysql –u 아이디 –h 호스트 주소 –p 디비 이름 > 출력 파일명; 리눅스 쉘에서 위와 같이 입력을 하면 파일에 DB의 인스턴스가 저장된다. 예를 들어 mysql의 아이디가 donxu이고 DB이름도 donxu, 테이블 이름은 donxu_board, 출력 파일을 board.txt로 한다고 하면 명령어는 다음과 같이 될 것이다. echo "select * from donxu_board" | mysql –u donxu –h localhost –p donxu > board.txt; 이걸 해보고 나서 알게 된 사실인데 굳이 리눅스 쉘에.. 더보기
Vi설정하기 오늘은 리눅스에서 vi 에디터를 좀 더 편하고 이쁘게 쓰기 위한 방법을 알아보자. set autoindent 자동으로 들여쓰기를 한다. set cindent c 프로그래밍을 할 때 자동으로 들여쓰기를 한다. set smartindent 자동으로 들여쓰기를 한다. set shiftwidth=4 들여쓰기 간격을 4로한다. set tabstop=4 탭 간격을 4로 한다. set visualbell 잘 못 눌렀을 때 경고음 대신 번쩍이게 한다. set novisualbell 비주얼 벨 기능을 사용하지 않음 set nu 라인의 번호를 보여준다. set nonu 라인의 번호를 보여주지 않는다. syntax on 자동으로 파일을 인식하여 색을 입혀주는 기능이 활성화 된다. set ruler 우측하단에 현재 커서의 위.. 더보기
웹 문서를 만들 때에는 validator를 꼭 사용하자!! 이번에 DB텀 프로젝트로 게시판을 만들게 되었다. 개발은 동아리 서버에 putty로 접속해서 하게 되었고, 개발 도중 확인하는 브라우저로는 firefox를 사용했다. 아무 문제없이 개발을 진행하고 있었는데, 우연한 기회에 IE에서 테스트를 하게 됐는데 화면에 아무 것도 나오지 않는 것이었다.!!!! 아무리 문제를 찾아봐도 찾을 수가 없었는데, 결국 html vaildator 사이트에서 검사를 해본 결과 수 많은 에러가 발생했고 그 중에 몇 개를 고쳐주자 잘 실행되었다. 그 전에도 validator가 있다는 것은 알고 있었지만 절대! 안써도 될 툴이라고 생각하고 있었는데, 이번 일을 계기로 삼아 이 툴이 얼마나 좋은지 알게되었다.ㅠ_ㅠ Vaildator 사이트 : http://validator.w3.org/ 더보기
웹 페이지 한글이 깨지는 문제 이번에 DB텀을 하면서 우리 동아리(untoC) 서버에서 작업을 하게 됐다. 왜냐하면 기본적인 서버 환경이 다 갖추어져 있기 때문이었다. Php, mysql, apache, …등이 다 설치가 되어 있기 때문에 그냥 쓰기만 하면 되는 상황이었다. 그래서 자연스럽게 php파일을 만들었는데 이게 무슨 일???!!! 한글이 깨지는 것이었다!!!! 처음에는 서버의 환경 설정 문제일 거라 생각했다. 구글링을 하면서 엄청나게 찾아 헤맸지만 절대 답을 찾을 수 없었다. 구글링을 통해 알아낸 몇가지 사실은 다음과 같다. 이렇게 한글이 깨지는 문제는 character set의 설정 문제인데 이는 php, mysql, apache에서 각각 설정을 다 해줘야 하는 부분이었다. 먼저 php설정은 etc폴더에 있는 php.ini.. 더보기