본문 바로가기

Linux

Shell 전화번호부 작성 1.1. 개요 쉘과 파일을 이용하여 간단한 전화번호부 디비를 구축한다. 1.2. 틀 잡기 데이터의 입력, 삭제, 수정, 검색, 출력, 종료를 위한 사용자 입력을 받아들이는 틀을 만든다. # ! /bin/sh DBASE="$HOME/phonebook.db" while : do echo -n "전화번호부 a : 입력 d : 삭제 e : 수정 s : 검색 v : 출력 [enter] : 종료 원하시는 작업을 선택해 주십시오 ?(a, d, e, s, v, [enter]) : " read RSP case $RSP in "") exit 0 ;; a|A) echo "입력" ;; d|D) echo "삭제" ;; e|E) echo "수정" ;; s|S) echo "검색" ;; v|V) echo "출력" ;; *) echo.. 더보기
Shell 키보드 입력하기 1.1. 개요 shell 에서 키 입력을 위한 방법은 2가지로 확인가능하다. 1.2. read 사용하기 단순하게 사용자의 입력을 받아들이기 위해서는 다음과 같이 read를 이용한다. read x echo $x 1.3. tty 이용하기 표준 입력으로 이미 어떠한 파일을 입력받고 있다면 그 다음에 read를 사용해서는 안된다. 외냐하면 read는 표준 입력이지 키보드 입력이 아니기 때문이다. 그러므로 이러한 키보드 입력을 사용하기 위해서는 line 더보기
Shell 로 백업 처리하기 1.1. 백업 하는 쉘 프로그램 특정 디렉토리 파일들을 주기적으로 백업을 수행하는 쉘 프로그램 1.1.1. 백업처리 쉘 작성 (back.sh) cd /app/porject/src log_date=$(date +%Y%m%d) echo $log_date rm -f *.zip rm -f *.tar tar -cvf myPrj_$log_date.tar * mv myPrj_$log_date.tar /temp/backup 소스 분석하기 cd /app/porject/src - 지정된 디렉토리 /app/project/src로 이동한다. log_date=$(date +%Y%m%d) - log_date라는 변수에 오늘 날짜에 해당하는 값을 저장한다. echo $log_date - log_date변수를 출력한다. rm -f .. 더보기
Shell Programming 기본 1.1. 문자열 처리 shell에서 문자열 중에 "*" or "sh" 이런 문장이 나왔을 때 echo와 같은 명령으로 문자열을 출력하려고 하면 유의해야 한다. original="* * * * * sh /weblogic/bea/domains/uccdomain/uccifAppRoot/demon/email/start.sh" (x)echo $original (o)echo "$original" (x)sed 's/"$original"/abc/g' (o)sed 's/'"$original"'/abc/g' 1.2. 기초 정보 #Shell - 명령 해석기 (== 윈도우즈 탐색기) - 시스템과 사용자간의 대화 창구 = 쉘 인터페이스 #Shell의 종류 - Bourn shell ($) - C Shell (%) - 기본 기능이.. 더보기
[Linux]GDB Core Debugging 1. coredump 한계 최대로 설정 -> ulimit -c unlinited 2. 확인하고자 하는 프로그램 실행 -> ./Phaethon 3. 프로그램이 죽으면 core.???? 파일이 생성된다. 4. gdb 환경 설정 -> export LD_LIBRARYPATH=/mnt/nfs/arm/smshin/gdb_lib 5. 코어 파일을 디버깅 하는 방법 ->gdb -core=core.5884 -se=test_task 6. BackTrace -> bt ex) rogman@lutop:~/src/embedded/bin/Phaethon$ gdb -core=core.5884 -se=Phaethon GNU gdb 6.8-debian Copyright (C) 2008 Free Software Foundation, In.. 더보기
[Linux]error: `TCP_NODELAY' undeclared 에러 발생시 #include 추가 하면 된다. 더보기
[Linux]vim UTF-8 encoding type 설정 .bashrc 파일 export LC_ALL=ko_KR.utf8 export LANG=ko_KR.utf8 .vimrc 파일 if v:lang =~ "utf8$" || v:lang =~ "UTF-8$" set fileencodings=utf-8,euc-kr endif set encoding=utf-8 set fileencoding=utf-8 터미널 프로그램에서 Linux서버에 접속해서 vim을 사용한다면 터머널 프로그램의 인코딩 타입을 UTF-8로 설정 해야함. 더보기
[Linux]디렉토리 전체의 인코딩을 euc-kr에서 utf-8로 바꾸기 퍼온곳 : http://yesyo.com/forums/archive/index.php/t-832.html 디렉토리 전체의 인코딩을 euc-kr에서 utf-8로 바꾸기 redhat-9에서 fedora-core 1으로 옮겨가면서 저에게 가장 문제가 되었던 사항이 인코딩이었습니다. 처음엔 그냥 복사해서 옮기다가, iconv가 있는걸 알고나서는 그것을 사용했는데요... 파일을 따로따로 인코딩을 옮겨야하다 보니 역시 불편해서 스크립트를 하나 만들었습니다. 좀더 자세한 사항은 아래 사이트를 참조하세요 http://quanta.cau.ac.kr/~caulug//wiki/wiki.php?iconv - 링크가 깨졌네요 #!/bin/sh # euckr2utf8 : iconv를 이용해 디렉토리 전체의 파일의 euckr 인코.. 더보기