| 000 | 00849namccc200277 k 4500 | |
| 001 | 000000671146 | |
| 005 | 20100806040036 | |
| 007 | ta | |
| 008 | 000828s2000 ulka 001a kor | |
| 020 | ▼a 8979140673 ▼g 13560 : ▼c \48000 | |
| 040 | ▼a 211009 ▼c 211009 ▼d 211009 | |
| 041 | 1 | ▼a kor ▼h eng |
| 049 | 1 | ▼l 121047981 ▼f 과학 ▼l 121047982 ▼f 과학 ▼l 121047983 ▼f 과학 ▼l 111163696 ▼f 개가 |
| 082 | 0 4 | ▼a 005.43 ▼2 21 |
| 090 | ▼a 005.43 ▼b 2000a | |
| 100 | 1 | ▼a Peek, Jerry D. |
| 245 | 1 0 | ▼a 유닉스 파워 툴 / ▼d Jerry Peek ; ▼e Tim O'Reilly ; ▼e Mike Loukides [공저] ; ▼e 이성희 역. |
| 246 | 1 9 | ▼a Unix power tools. 2nd ed. |
| 260 | ▼a 서울 : ▼b 한빛미디어 , ▼c 2000. | |
| 300 | ▼a 1393 p. : ▼b 삽도 ; ▼c 27 cm + ▼e CD-ROM 1매. | |
| 500 | ▼a 색인수록 | |
| 700 | 1 | ▼a O'Reilly, Tim |
| 700 | 1 | ▼a Loukides, Mike |
| 700 | 1 | ▼a 이성희, ▼e 역 |
| 950 | 0 | ▼b \48000 |
소장정보
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 과학도서관/보존서고1(동양서)/ | 청구기호 005.43 2000a | 등록번호 121047981 (16회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
| No. 2 | 소장처 세종학술정보원/과학기술실(5층)/ | 청구기호 005.43 2000a | 등록번호 151096312 (6회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
| No. 3 | 소장처 세종학술정보원/학과비치/ | 청구기호 005.43769 2000 | 등록번호 151100119 | 도서상태 대출불가(자료실) | 반납예정일 | 예약 | 서비스 |
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 과학도서관/보존서고1(동양서)/ | 청구기호 005.43 2000a | 등록번호 121047981 (16회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 세종학술정보원/과학기술실(5층)/ | 청구기호 005.43 2000a | 등록번호 151096312 (6회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
| No. 2 | 소장처 세종학술정보원/학과비치/ | 청구기호 005.43769 2000 | 등록번호 151100119 | 도서상태 대출불가(자료실) | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
유닉스를 더 쉽고 효율적으로, 더 재미있게 사용하는 데 도움이 될 만한 팁과 스크립트, 테크닉을 소개한다. 리눅스, Mac OS X, BSD에 관한 핵심 정보는 물론, bash나 zsh 같은 신형 셸에 관한 내용과 최신 유틸리티나 애플리케이션에 관한 정보도 폭넓게 다루고 있다.
또한 보안과 인터넷 연결에 관한 내용도 대폭 보강했으며, 요즘 갈수록 널리 퍼지고 있는 각종 플랫폼이 혼합된 환경을 따라잡을 수 있게 윈도우와 유닉스 사이의 연결에 관한 내용도 새롭게 추가했고, 소프트웨어 설치와 패키징, 펄과 파이썬에 관한 기본적인 내용도 수록했다.
정보제공 :
저자소개
제리 픽(지은이)
유닉스 컨설턴트, 코스웨어 개발자, 강사 등으로 활동하고 있다. 지은 책으로 <한권으로 끝내는 유닉스> 등이 있다.
마이크 루키데스(지은이)
O'Reilly사의 선임 편집자로, Multiflow Computer에 근무하였다. 전기공학 학사학위와 영문학 박사학위를 가지고 있다. 지은 책으로 <System Performance Tuning>, <UNIX for FORTRAN Programmers> 등이 있다.
팀 오라일리(지은이)
온라인 학습, 도서 출간, 콘퍼런스 개최를 통해 각 영역에서 끊임없이 혁신의 물결을 이어갈 담론을 이끌어온 오라일리 미디어 설립자이자 CEO. 각종 프로그래밍 언어를 비롯하여 월드와이드웹, 오픈소스, 웹2.0, 정부2.0, 메이커 운동Maker Movement, 빅데이터 등 세계적으로 영향력을 끼쳐온 새로운 기술을 발굴하고 소개해왔으며, 웹2.0서밋을 비롯하여 다양한 컨퍼런스를 개최했다. 저자의 비전은 오라일리 미디어가 정보기술 분야에서 혁신을 이룰 수 있는 새로운 아이디어를 공유함으로써 세상을 바꾸는 데 기여하는 것이다. 초창기 벤처기업 오라일리 알파테크의 파트너이자 비영리 단체 코드 포 아메리카Code for America, 메이커 운동의 주도자인 메이커 미디어Maker Media, 오픈 액세스 저널 피어제이PeerJ, 빅데이터 분석 기업 시비스 애널리틱스Civis Analytics 및 법안 관련 의견 수렴 서비스 팝복스PopVox의 이사진으로 활동하고 있다.
셸리 파워즈(지은이)
첫 집필한 자바스크립트 도서에서부터 최근 집필한 그래픽 및 디자인 툴 관련 서적 등 18년 이상을 웹 기술 개발 분야에서 일하며 집필 활동을 하고 있습니다. 그녀가 최근 O’Reilly 출판사에서 출간한 도서로는 자바스크립트, HTML5 미디어 객체, Ajax, 웹 그래픽이 있습니다.
이성희(옮긴이)
KAIST 전산과와 연세대학원 컴퓨터 구조 연구실을 졸업하고 데이콤 보라넷을 거쳐 미국 실리콘밸리에서 시스템 어드민으로 일하고 있다. 번역서로는 『DNS와 BIND 3판』(1999), 『유닉스 파워툴』(2000), 『시스템 프로그래밍』(2001), 『HTML5 Canvas』(2012), 『Head First Mobile Web』(2012, 이상 한빛미디어), 『해킹 침입의 드라마』(2005), 『소프트웨어 비즈니스』(2007, 이상 사이텍미디어)가 있다.
목차
목차 역자 서문 = 5 차례 = 7 이 책의 사용 방법 = 38 서문 = 41 1장 소개 = 53 1.01 UNIX에겐 뭔가 특별한 것이 있다 = 53 1.02 키보드를 눌러봐요 = 54 1.03 서로 협력하는 프로그램들 = 56 1.04 파이프 활용 = 57 1.05 쉘 프로그래밍이 별건가요 = 59 1.06 편집에 유용한 툴 = 61 1.07 솟아나는 힘을 느껴보자 = 62 1.08 여러 가지 쉘들 = 63 1.09 내가 이용하고 있는 쉘은? = 65 1.10 내부 명령어와 외부 명령어 = 66 1.11 쉘이 다른 명령어를 실행시키는 방법 = 67 1.12 쉘 스크립트의 정체 = 67 1.13 탄탄한 기본의 중요성 = 68 1.14 커널과 데몬 = 69 1.15 파일명 = 71 1.16 와일드카드 = 73 1.17 파일명 확장자 = 75 1.18 와일드카드 다루기 = 76 1.19 파일시스템의 트리 구조 = 78 1.20 홈 디렉토리 = 80 1.21 경로명 생성 = 80 1.22 UNIX가 파일을 다루는 방법 : Inode = 82 1.23 파일 액세스 퍼미션 = 83 1.24 슈퍼유저(루트) = 87 1.25 디렉토리 액세스 = 88 1.26 다중사용자 시스템 = 88 1.27 백그라운드 프로세싱 = 89 1.28 백그라운드 프로세싱에 대한 알려진 비밀 = 90 1.29 파일이 아닌 파일 = 92 1.30 입력과 출력 방향 바꾸기 = 93 1.31 X윈도우 시스템 = 93 1.32 누락된 내용 = 94 1.33 UNIX 네트워킹과 통신 = 94 1.34 UNIX에도 단점은 있다 = 97 1부. 느긋한 마음으로 2장. 로그인 = 101 2.01 쉘 환경을 내 맘대로 = 101 2.02 쉘 설정 파일-무엇을, 어디서, 왜 = 101 2.03 쉘 설정 파일에서 벌어지는 일 = 104 2.04 변경된 설정을 즉석에서 확인하는 방법 = 105 2.05 느린 로그인을 빠르게 하는 방법 = 105 2.06 쉘 설정 파일에 절대 경로명 이용 = 108 2.07 읽혀지지 않는 C 쉘 설정 파일 = 109 2.08 로그인 쉘 확인하기 = 110 2.09 set prompt 테스트로 C 쉘 속도 증진 = 111 2.10 set prompt 테스트에 대한 알려진 비밀 = 112 2.11 ksh과 bash의 시작을 $-테스트로 더욱 빠르게 = 114 2.12 서로 다른 터미널 자동 설정 = 114 2.13 . cshc.$HOST로 호스트마다 다르게 설정하기 = 117 2.14 motd.diff : 로그인 메시지에 새로운 라인을 = 118 2.15 깔끔한 로그인 : 로그인 메시지는 한 번만 = 119 2.16 허가된 쉘 : 허가받지 못한 쉘 이용하기 = 120 3장. 로그아웃 = 125 3.01 로그아웃하면서 명령어 실행 = 125 3.02 Bourne/Korn 쉘 로그아웃하면서 명령어 실행 = 126 3.03 행운의 과자 = 127 3.04 파일 자동 청소 = 128 3.05 돌발적인 C 쉘 로그아웃 중지하기 = 128 3.06 돌발적인 Bourne 쉘 로그아웃 중지하기 = 129 3.07 다중 화면을 제공하는 screen = 130 3.08 내가 이용하는 tty는? = 131 4장. 홈 디렉토리 구조 = 133 4.01 구조적이지 뭐지? = 133 4.02 프로그램들과 스크립트들을 담아놓는 bin 디렉토리 = 134 4.03 비실행 파일들을 담아둘 디렉토리 = 135 4.04 Emacs용 파일을 담아둘 디렉토리 = 135 4.05 사적인 디렉토리 = 136 4.06 파일명 짓기 = 136 4.07 디렉토리가 더 필요해 = 137 4.08 디렉토리 쉽게 만들기 = 138 4.09 .exrc 파일에 vi 설정하기 = 139 4.10 명령어의 위치가 궁금하면 whereiz를 = 140 5장. 터미널 설정 = 143 5.01 터미널에 대해 설명하는 단원 = 143 5.02 터미널 데이터베이스 = 143 5.03 로그인 시 터미널 종류 설정하기 = 145 5.04 test을 이용한 TERMCAP 변수 설정하기 = 148 5.05 터미널 종류 질의: qterm = 149 5.06 로그인하면 터미널이 먹통이 되네 = 151 5.07 termcap과 terminfo가 제어할 수 있는 것과 없는 것 = 153 5.08 터미널 이스케이프 시퀀스 = 153 5.09 삭제 문자. kill 문자. 인터럽트 문자 설정하기 = 155 5.10 사용하고 있는 터미널의 이름 알아내기 = 156 5.11 tset을 이용한 터미널 초기화 = 159 5.12 tput을 이용한 터미널 초기화 = 160 6장. 쉘 변수와 환경 변수 = 163 6.01 환경 변수의 용도 = 163 6.02 부모와 자식의 관계 = 165 6.03 미리 정의된 환경 변수들 = 166 6.04 PATH 환경 변수 = 168 6.05 PATH와 경로명 = 170 6.06 TZ 환경 변수 = 171 6.07 지금 한국은 몇 시죠? = 172 6.08 쉘 변수 = 173 6.09 특별한 C 쉘 변수들 = 174 6.10 상이한 환경에서 명령어 실행하기 = 177 7장. 쉘 프롬프트 바꾸기 = 179 7.01 바꾸는게 좋죠! = 179 7.02 기본적인 프롬프트 설정하기 = 180 7.03 vi, rsh 등에서 문제를 일으키는 C 쉘 프롬프트 = 180 7.04 내장 명령어를 이용한 빠른 프롬프트 설정하기 = 181 7.05 다중라인 쉘 프롬프트 = 184 7.06 터미널의 상태표시줄에 세션 정보 나타내기 = 185 7.07 게으른 사용자를 위한 "메뉴 프롬프트" = 186 7.08 번쩍거리는 쉘 프롬프트 = 187 7.09 $SHLVL로 서브 쉘의 레벨 나타내기 = 189 7.10 텅 빈 쉘 프롬프트의 유용성 = 191 7.11 $cwd보다 더 좋은 dirs = 191 7.12 외부 명령어가 보낸 시그널로 변수를 설정하기 = 193 7.13 bash에서 명령어 실행과 프롬프트를 출력을 동시에 = 195 2부. 귀찮은 일은 컴퓨터가 하도록 8장. 명령어를 쉘이 해석하는 방법 = 199 8.01 쉘이 하는 일 = 199 8.02 bash의 소개 = 200 8.03 tcsh의 소개 = 201 8.04 명령어 해석과 실수에 의한 파일 덮어쓰기 = 202 8.05 명령행 해석 = 203 8.06 명령행 인자 출력하기 = 205 8.07 검색 경로 설정하기 = 208 8.08 실행할 수 없는 명령어를 갖고 있는 디렉토리 = 210 8.09 앨리어스 속의 와일드카드 = 211 8.10 eval : 다른 기회가 필요한 경우 = 212 8.11 bash가 어느 것을 이용할까? = 213 8.12 C 쉘이 어느 것을 이용할까? = 215 8.13 "2〉& 1 file" 또는 "〉 file 2〉& 1" ? = 217 8.14 Bourne 쉘의 인용 처리 = 218 8.15 Bourne 쉘 인용 처리와 C 쉘 인용 처리의 차이점 = 224 8.16 파일명 내의 특수 문자를 인용 처리로 해결하기 = 225 8.17 변수 verbose와 echo로 인용 처리 보기 = 226 8.18 Here 문서 = 227 8.19 "특수" 문자들과 연산자들 = 228 8.20 백슬래시의 필요한 개수 = 232 9장. 명령행에서 시간 절약하기 = 235 9.01 UNIX 명령행에 특별한 뭔가가 있다 = 235 9.02 라인 삭제 및 단어 삭제를 사용하여 빠르게 라인을 수정하기 = 236 9.03 CTRL-r을 사용하여 명령행에 다시 출력하기 = 237 9.04 와일드카드를 사용하여 파일 생성하기 = 238 9.05 { }을 사용하여 문자열 구성하기 = 239 9.06 문자열을 편집(콜론) 연산자 = 241 9.07 ksh과 bash에서 문자열 편집하기 = 243 9.08 파일명 입력 대행 : 파일명을 빠르게 입력하기 = 245 9.09 파일명 입력 대행에서 쓸모없는 파일들에 매칭하자 않기 = 246 9.10 파일명 입력 대행이 적절하지 않은 경우 = 247 9.11 foreach 순환문을 사용하여 명령어 반복하기 = 247 9.12 Bourne 쉘의 for 순환문 = 249 9.13 다중행 명령어와 보조 프롬프트 = 251 9.14 형식문을 작성하기 위한 "here" 문서 사용하기 = 252 9.15 복잡한 명령어들을 위한 일회용 스크립트 = 253 9.16 명령어 치환 = 254 9.17 임시 파일을 이용해서 많은 양의 텍스트 다루기 = 256 9.18 프로세스 치환 = 257 9.19 성미가 급한 사람들을 위한 미리 입력 = 260 9.20 명령행을 위한 많은 파일들 = 262 9.21 xargs를 가지고 긴 명령행 다루기 = 264 9.22 xargs : 공백과 뉴라인으로 인한 문제점 = 266 9.23 "Arguments Too Long"에러에 대한 해결책 = 268 9.24 ls-l, grep 등의 결과를 편집해서 파일 목록 얻기 = 269 9.25 C 쉘 repeat 명령어 = 272 9.26 Expect = 273 10장. 앨리어스 = 279 10.01 커스텀 명령어 만들기 = 279 10.02 커스텀 명령어를 위한 앨리어스 = 279 10.03 C 쉘 앨리어스에서 명령행 인자 사용하기 = 283 10.04 ksh과 bash에서의 앨리어스 = 285 10.05 source 할 수 있는 스크립트 = 286 10.06 C쉘에서 앨리어스 루프 피하기 = 288 10.07 C쉘의 앨리어스에 if-then-else를 넣기 = 289 10.08 C 쉘에서 makealias와 quote를 사용하여 인용부호 넣기 = 290 10.09 쉘 함수 = 291 10.10 Bourne 쉘 함수와 앨리어스 흉내내기 = 292 11장. 히스토리 = 295 11.01 역사로부터의 교훈 = 295 11.02 히스토리 요약 = 296 11.03 내가 즐겨 이용하는 !$ = 297 11.04 내가 즐겨 이용하는 !:n$$^{*}$$ = 298 11.05 내가 즐겨 이용하는 ^^ = 299 11.06 와일드카드의 안전한 사용을 위해 !$ 사용하기 = 300 11.07 히스토리 치환 = 301 11.08 명령어 사이클 반복 = 307 11.09 파일에 일련의 명령어들을 수행하기 = 308 11.10 :p를 사용해서 히스토리 확인하기 = 309 11.11 로그아웃할 때 히스토리 전달하기 = 310 11.12 다른쉘로 히스토리 전달하기 = 313 11.13 쉘의 명령행 편집하기 = 314 11.14 대화식 히스토리 편집을 위한 다른 방법 = 316 11.15 histchars를 사용하여 C 쉘 히스토리 문자 바꾸기 = 319 11.16 히스토리 문자를 바꾸는 것 이외의 방법 = 319 12장. 작업 제어 = 321 12.01 효율적인 작업 제어 = 321 12.02 작업을 가리키는 여러 가지 방법 = 324 12.03 "현재 작업"이 생각했던 작업과 다른 경우 = 326 12.04 작업 제어와 vi의 autowrite = 326 12.05 시스템 과부하? 몇몇 작업을 중지시키자 = 327 12.06 작업의 상태 변경 알리기 = 328 12.07 stty tostop을 이용하여 백그라운드 출력을 차단하기 = 329 12.08 작업 제어 요약 = 330 12.09 screen을 이용하여 여러 개의 쉘 세션들을 실행하기 = 331 13장. 입력과 출력 리다이렉션 = 333 13.01 표준 입력과 표준 출력 이용하기 = 333 13.02 cat 명령어에 인자를 하나만 주는 것은 부족하다 = 336 13.03 표준 에러만을 파이프로 전달하기 = 337 13.04 페이지로 파이프로 전달하기 = 337 13.05 C 쉘의 리다이렉션 = 339 13.06 noclobber를 이용한 안전한 리다이렉션 = 340 13.07 ( ) 서브 쉘 연산자 = 341 13.08 {리스트}를 이용하여 Bourne 쉘 명령어들을 그룹화하기 = 343 13.09 tee를 이용하여 출력을 여러 곳으로 보내기 = 344 13.10 tee를 이용해서 여러 명령어들을 하나의 파일로 모으기 = 345 13.11 tpipe : 표준 출력을 하나 이상의 곳으로 리다이렉트하기 = 345 13.12 여러 터미널로 쓰기 = 347 13.13 파일명 "-" = 348 13.14 빈 파일로 할 수 있는 일은? = 348 13.15 양동이가 넘쳐흐를 때 :-) = 350 13.16 logerrs를 이용하여 에러를 저장하고 보여주기 = 351 3부. 파일시스템과 춤을 14장. 파일시스템 개요 = 355 14.01 파일시스템에 대해 비울 내용 = 355 14.02 상대 경로명과 절대 경로명 = 356 14.03 현재 디렉토리에 대한 이해 = 358 14.04 현재 디렉토리의 이름 찾기 = 359 14.05 디렉토리 변경 시 시간 절약 : cdpath = 360 14.06 쉘의 pushd와 popd 명령어 = 362 14.07 pushd를 활용한 앨리어스 = 364 14.08 앨리어스를 이용한 빠른 cd = 364 14.09 디렉토리 대표 문자를 이용해서 cd 하기 = 365 14.10 디렉토리들과 파일들을 찾게 도와주는 변수들 = 367 14.11 아무개의 홈 디렉토리를 빠르게 찾기 = 369 14.12 쉘 변수로 위치 표시하기 = 370 14.13 나는 실제로 어느 디렉토리에 있지? = 371 14.14 디렉토리를 들어가고 나올 때 자동으로 설정하기 = 372 15장. 와일드카드 = 375 15.01 파일의 이름을 지정하는 와일드카드 = 375 15.02 파일명 와일드카드 요약 = 377 15.03 Korn 쉘 및 Bourne 쉘에 { } 연산자 추가하기 = 379 15.04 와일드카드가 일치하지 않으면? = 380 15.05 점으로 시작하는 파일들을 와일드카드로 일치시키기 = 380 15.06 경로명 안에 와일드카드를 사용할 수 없는 경우 = 382 15.07 grep -l로 일치하는 파일 목록 얻기 = 382 15.08 grep -c를 사용해서 일치하지 않는 파일 목록 얻기 = 383 15.09 nom: 와일드카드에 일치되지 않는 파일들을 나열 = 385 15.10 디렉토리에만 일치되는 와일드카드 = 386 16장. 어디에 두었더라? = 389 16.01 find 명령어 외의 모든 것들 = 389 16.02 ls -t와 ls -u를 가지고 가장 오래되거나 가장 새로운 파일들을 찾기 = 389 16.03 ls출력을 재배열하기 = 392 16.04 모든 서브 디렉토리들을 ls-R로 출력하기 = 394 16.05 세 가지 UNIX의 파일 시간 = 394 16.06 clf. cls : "압축된" ls 목록 = 395 16.07 ls 단축 명령 : ll, lf, lg등 = 397 16.08 ls -d 옵션 = 398 16.09 최근에 변경된 파일들을 나열하기 위한 앨리어스 = 399 16.10 findcmd : 검색 경로에서 명령어 찾기 = 399 16.11 ls -A와 -a로 숨은 파일들을 보여주기 = 400 16.12 유용한 ls 앨리어스들 = 401 16.13 파일을 액세스할 수 없다면 이름 속의 공백을 찾아보자 = 403 16.14 파일명 속의 출력 불가능한 문자들을 보여주기 = 404 16.15 웃으면서 UNIX를 변경할 수 있게 해주는 스크립트: dir = 405 16.16 고유한 파일명을 자동으로 선택하기 = 406 16.17 파일의 경로명에서 디렉토리 이름 가져오기 = 407 16.18 오늘 생성했거나 편집한 파일들을 나열하기 = 407 16.19 stree : 간단한 디렉토리 트리 = 408 16.20 vtree : 비주얼 디렉토리 트리 프로그램 = 409 16.21 같은 이름을 가진 모든 디렉토리 찾기 = 410 16.22 dircmp로 두 디렉토리 트리 비교하기 = 411 16.23 두 디렉토리 트리 내의 파일명들을 비교하기 = 413 16.24 종류별로 파일의 개수 세기 = 413 16.25 파일들을 나이와 크기로 나열하기 = 414 16.26 findtext로 텍스트 파일들을 찾아내기 = 416 16.27 newer: 가장 새로운 파일의 이름을 출력하기 = 418 16.28 oldlinks: 연결되지 않은 심볼릭 링크 찾아내기 = 419 16.29 sls: 출력 형식을 선택할 수 있는 훌륭한 ls = 420 17장. find로 파일 찾기 = 423 17.01 find 명령은 대단하다 : 문제는 그 사용법을 아는 것이다 = 423 17.02 깊은 디렉토리 트리 파고 들어가기 = 426 17.03 -print를 잊지 말자 = 427 17.04 특정한 이름을 가진 파일 찾기 = 428 17.05 오래된 파일들을 검색하기 = 429 17.06 find 검색 연산자의 전문가가 되기 = 429 17.07 find 가 찾는 시간들 = 432 17.08 정확한 파일 시간 비교 = 432 17.09 -newer의 문제점들 = 433 17.10 찾은 것에 명령 실행하기 = 434 17.11 -exec을 이용해서 커스텀 테스트하기 = 436 17.12 명령어 하나로 여러 가지 찾기 = 437 17.13 종류에 따라 파일 찾기 = 439 17.14 크기로 파일 검색하기 = 440 17.15 퍼미션으로 파일 검색하기 = 440 17.16 소유자와 그룹으로 검색하기 = 442 17.17 디렉토리 트리 복제하기(경로명 없이 find의 { } 연산자를 이용) = 442 17.18 "빠른 find" 사용하기 = 443 17.19 find 데이터베이스를 이용해서 (휠씬) 더 빠르게 파일 찾기 = 446 17.20 디렉토리 트리를 grep 하기 = 449 17.21 lookfor: 어떤 파일에 그 단어가 있는가? = 450 17.22 파일을 가리키는 링크 찾기 = 451 17.23 -prune으로 파일 찾기 = 452 17.24 find 내에서 트리의 특정 부분을 건너뛰기(더 선택적인 -prune) = 454 17.25 find가 네트워크 파일시스템들을 검색하지 않게 하기 = 455 18장. 링크걸기, 이름바꾸기, 그리고 파일 복사하기 = 457 18.01 파일 복사가 뭐 그리 복잡한가? = 457 18.02 디렉토리에는 실재로 무엇이 들어있는가? = 458 18.03 2개 이상의 이름을 가진 파일 = 459 18.04 링크에 대한 더 많은 내용 = 462 18.05 링크 만들기와 삭제하기 = 465 18.06 끊어진 심볼릭 링크 = 467 18.07 디렉토리에 링크걸기 = 468 18.08 심볼릭 링크의 실제 파일명 보여주기 = 470 18.09 여러 파일들의 이름 바꾸기, 복사하기, 비교하기 = 471 18.10 그 일을 하는데는 한가지 이상의 방법이 있다 = 471 18.11 ren으로 파일 이름 바꾸기 = 473 18.12 대화식으로 파일 목록의 이름 바꾸기 = 475 18.13 한가지 이상의 방법 = 476 18.14 다중 심볼릭 링크들을 재연결하기 = 476 18.15 cp -r로 디렉토리트리 복사하기 = 477 18.16 (tar | tar)를 사용해서 디렉토리 트리 복사하기 = 480 19장. 아카이브 만들기와 읽기 = 483 19.01 묶어서 옮기기 = 483 19.02 쉘 아카이브에 대한 소개 = 484 19.03 unshar : 쉘 아카이브를 풀기 = 486 19.04 unshar의 단순한 버전 = 486 19.05 tar를 사용하여 아카이브 만들고 풀기 = 487 19.06 GNU tar 샘플러 = 489 19.07 압축된 아카이브에서 파일 풀기 = 490 19.08 설명하는 tar의 문제점 = 491 19.09 시스템 V 테이프 아카이버: cpio = 492 20장. 파일 백업 = 495 20.01 tar에 대해 한 말씀 = 495 20.02 백업을 직접 해보자 = 496 20.03 로컬 테이프 장치를 이용해서 백업하기 = 498 20.04 tar 명령어로 테이프에서 파일을 복구하기 = 501 20.05 tar를 이용하여 원격지 테이프 장치로 백업하기 = 503 20.06 원격 장비의 테이프 장치에 쓰기 = 503 20.07 선택적 백업을 위한 타임스탬프 파일 생성 = 506 20.08 이런 파일은 포함하고 저런 파일은 제외하면서 tar 실행하기 = 506 20.09 프로그램이 와일드카드를 이해하지 못하는 경우 = 510 20.10 절대 경로명 금지 = 511 20.11 tar의 인자들을 올바른 순서대로 취하기 = 512 20.12 SCCS나 RCS를 이용한 파일 보호 = 513 20.13 SCCS 개요 = 514 20.14 RCS 개요 = 516 20.15 rcsrevs를 이용한 RCS 리비전 번호 나열 = 518 21장. 파일 관리에 대한 추가 내용 = 521 21.01 들어가기에 앞서 = 521 21.02 임시 파일들에 적합한 장소:/tmp = 521 21.03 임시 파일에 고유한 이름을 부여 = 522 21.04 /tmp와 /usr/tmp가 모두 있는 이유 = 524 21.05 파일의 마지막 액세스 시간이 중요한 경우 = 525 21.06 파일의 Inode 변경(생성 시간이 아님!) 시간 = 526 21.07 touch를 이용하여 파일 수정 시간을 설정하기 = 526 21.08 MAILCHECK 및 mail 변수 = 528 21.09 make를 이용해서 자동으로 파일 인쇄물을 최신으로 유지하기 = 531 21.10 화면의 상단에 디렉토리 목록을 나타내기: dirtop = 532 21.11 안전한 삭제. 이동. 그리고 복사 = 534 21.12 파일들을 디렉토리에 복사하기 = 535 21.13 stat을 이용해서 Inode 읽기 = 535 21.14 자동으로 날짜를 파일명에 추가하기 = 536 22장. 파일 보안, 소유권 및 공유 = 537 22.01 파일 소유권과 보안에 대한 소개 = 537 22.02 파일과 디렉토리 퍼미션에 대한 안내 = 537 22.03 새로운 파일의 소유주 = 542 22.04 정확한 umask 설정 = 543 22.05 setgid 비트를 갖는 디렉토리 내의 그룹 퍼미션 = 544 22.06 스티키 비트를 이용한 파일 보호 = 545 22.07 chmod를 이용해서 파일의 퍼미션 변경 = 545 22.08 chmod = 연산자의 효율성 = 548 22.09 중요한 파일을 쓰기 금지하여 보호 = 548 22.10 cx, cw, c-w: 파일 퍼미션의 신속한 변경 = 549 22.11 쓰기 액세스가 없는 파일을 수정하기 = 550 22.12 액세스는 가능하지만 목록은 볼 수 없는 디렉토리 = 551 22.13 그룹과 그룹 소유권 = 553 22.14 사용자를 그룹에 추가하여 퍼미션 박탈하기 = 554 22.15 퍼미션 뒤섞기 = 555 22.16 cpmod를 이용한 퍼미션 복사 = 557 22.17 crypt의 보안성을 높이는 방법 = 558 22.18 보안을 위해 화면 지우기 = 559 22.19 쉘 스크립트는 읽기 및 실행이 가능해야 함 = 560 22.20 왜 BSD UNIX에서 파일 소유권을 변경할 수 없을까? = 561 22.21 chown을 이용하지 않고 파일의 소유권 바꾸기 = 561 22.22 누구나 이용할 수 있는 su 명령어 = 562 23장. 파일 지우기 = 567 23.01 생성과 소멸의 순환 = 567 23.02 rm의 무서움 = 567 23.03 rm을 안전하게 만드는 트릭 = 569 23.04 "yes"나 "no" 중에서 항상 yes = 570 23.05 일부만 지우고 일부는 남겨두기 = 571 23.06 대화식으로 파일들을 지우는 빠른 방법 = 571 23.07 일부 디렉토리 내의 안전한 파일 삭제 = 572 23.08 안전한 삭제의 장단점 = 573 23.09 delete: 불의의 삭제로부터 파일들을 보호 = 574 23.10 무조건 지우기: rm-f = 577 23.11 괴상한 이름의 파일 지우기 = 578 23.12 와일드카드를 이용해서 이상한 이름의 파일들 지우기 = 578 23.14 대시(-)로 시작하는 파일명 다루기 = 580 23.15 unlink를 이용해서 이상한 이름의 파일을 제거하기 = 580 23.16 이상한 파일을 inode 번호로 지우기 = 582 23.17 디렉토리를 지울 때의 문제점 = 582 23.18 디렉토리 생성과 삭제의 원리 = 584 23.19 읽히지 않는(BSD)매뉴얼 페이지 삭제하기 = 585 23.20 낡은 파일들 지우기 = 585 23.21 하나만 남기고 모든 파일을 다 지우기 = 587 23.22 find를 이용해서 불필요한 파일들을 청소하기 = 588 24장. 디스크 공간을 늘리는 기타 방법 = 591 24.01 파일을 지우는 대신에 비워버리자 = 591 24.02 디스크 공간 절약: 로그 파일과 메일박스 = 592 24.03 열려있는 파일을 언링크하는 것은 좋은 생각이 아니다 = 593 24.04 링크를 이용해서 공간 절약하기 = 594 24.05 파일 크기 제한 = 595 24.06 탭 문자를 이용해서 공간 절약하기 = 596 24.07 파일을 압축해서 공간 절약하기 = 596 24.08 디렉토리 트리를 tar로 묶고 압축해서 공간 절약하기 = 598 24.09 디스크 공간 확인하기 = 600 24.10 zloop : 압축된 파일 명령어 실행하기 = 602 24.11 zvi, zex, 그리고 zed를 이용하여 압축된 파일 편집하기 = 603 24.12 디렉토리 트리 압축하기: 세세한 조절 = 605 24.13 strip으로 실행 파일에서 공간 절약하기 = 606 24.14 strip은 신중하게 이용하자 = 607 24.15 디렉토리 새로 구성하기 = 608 24.16 덩치가 큰 디렉토리 다듬기 = 609 24.17 디스크 쿼터 = 610 24.18 덩치가 크다고 디스크를 많이 차지하는 것은 아니다 = 611 4부. 파일 안 살펴보기 25장. 파일 안에 무엇이 있는가 살펴보기 = 615 25.01 어려운 문제 해결하기 = 615 25.02 cat을 정복하는 네 가지 방법 = 616 25.03 파일 내용을 페이지 단위로 자르는 more 명령어 사용하기 = 617 25.04 "more" 보다는 "less" = 619 25.05 압축 파일, RCS 파일, 출력 불가 파일들 보기 = 619 25.06 공백 문자는 어떻게 보나? = 621 25.07 cat -v 또는 od -c를 이용해서 출력 불가 문자들 보기 = 621 25.08 파일 타입 찾아내기 = 624 25.09 공백 문자 지우고 덧붙이기 = 626 25.10 비어있는 라인 제거하기 = 626 25.11 모든 공백 라인들을 무시하는 cat: crush = 627 25.12 두 개의 스페이스, 세 개의 스페이스 = 627 25.13 pushin : 여분의 공백 문자 줄이기 = 628 25.14 파일의 끝을 보기: tail = 629 25.15 tail을 잘 다루기 = 630 25.16 파일이 점점 커질 때 어떻게 파일을 보나? = 631 25.17 tail이 없는 경우에는 앨리어스를 = 632 25.18 많은 파일의 추가적인 입력 보기 = 632 25.19 filp을 이용해서 라인 파일들의 라인들을 거꾸로 보기 = 633 25.20 파일의 첫부분 출력하기 = 634 25.21 라인 번호 달기 = 635 26장. 정규표현식(패턴 매칭) = 637 26.01 표현식이란? = 637 26.02 와일드카드와 정규표현식을 혼동하지 마라! = 638 26.03 정규표현식 이해하기 = 638 26.04 정규표현식에서 매타 문자 사용하기 = 641 26.05 정규표현식 시작하기 = 649 26.06 무엇이 정규표현식에 매칭되는가? = 650 26.07 매칭의 확장을 제한하기 = 652 26.08 원하지 않는 메타 문자를 결코 사용하지 않는다 = 653 26.09 다른 UNIX 프로그램에서 유효한 메타 문자들 = 654 26.10 예를 통한 패턴 매칭에 대한 참조 = 656 27장. 파일에서의 검색하기 = 661 27.01 grep의 다른 버전들 = 661 27.02 grep으로 텍스트 검색 = 662 27.03 매칭되지 않는 텍스트 찾기 = 663 27.04 단어를 패턴으로 찾기 = 664 27.05 egrep으로 텍스트의 확장 검색 = 664 27.06 빠른 grep은 아니다 = 665 27.07 패턴들의 리스트에 대한 grep = 667 27.08 glimpse와 agrep = 667 27.09 새로운 grep이 훨씬 빠르다 = 669 27.10 rcsgrep으로 RCS 파일검색 = 670 27.11 sed를 사용하여 다중 라인의 내용 검색하기 = 672 27.12 Perl로 일반적인 grep 명령어 만들기 = 672 27.13 Perl로 작성된 grep 같은 프로그램들 = 674 27.14 복합 검색 = 675 27.15 빠르게 검색하기 = 676 27.16 대소문자 구별없이 검색하기 = 677 27.17 열에 있는 한 개의 문자 찾기 = 678 27.18 "look"을 이용한 빠른 검색과 오타 체크 = 678 27.19 바이너리 파일에서 단어 검색 = 679 28장. 파일 비교하기 = 681 28.01 diff로 파일의 차이점 체크하기 = 681 28.02 세 개의 다른 버전을 비교하는 diff3 = 683 28.03 context diff = 685 28.04 Side-by-Side diff: sdiff = 687 28.05 다른 파일과 나란히 파일 비교하기 = 688 28.06 sdiff로 파일 내용 선택하기 = 688 28.07 아주 긴 파일들의 비교: bdiff = 689 28.08 diff 결과를 쉽게 보기 = 690 28.09 diff에 의해 만들어진 ex 스크립트 = 691 28.10 diff와 탭스탑의 문제점 = 694 28.11 cmp와 diff = 694 28.12 comm으로 두 파일을 비교하기 = 695 28.13 make는 프로그래머만을 위한 것이 아니다! = 697 28.14 make를 더 잘 사용하기 = 700 28.15 diffmk로 troff 파일의 변경 보기 = 701 29장. 철자 체크, 단어 수 계산, 텍스트 분석 = 703 29.01 UNIX 쉘 명령어 = 703 29.02 ispell로 철자 체크하기 = 704 29.03 그 단어의 철자는 어떻게 되지? = 706 29.04 spell 내부 들여다 보기 = 707 29.05 ispell의 사전에 단어 추가하기 = 709 29.06 라인 수, 단어, 문자를 세는 wc = 711 29.07 각각의 단어들이 얼마나 많이 사용되는가? = 714 29.08 두 번 반복되는 a 찾기 = 715 29.09 closure를 찾기 = 715 29.10 부디, 단어만을 = 717 5부. 문서 편집 30장. vi에 대한 팁과 기교 = 721 30.01 vi와 ex 편집기가 왜 중요한가? = 721 30.02 이 장에서 다루게 될 내용 = 722 30.03 마우스와 vi = 722 30.04 vi로 여러 개의 파일들을 편집하기 = 725 30.05 파일들을 오가며 편집하기 = 726 30.06 vi와 ex의 로컬 설정들 = 727 30.07 버퍼를 이용하여 텍스트를 옮기고 복사하기 = 728 30.08 번호 버퍼에서 삭제한 것을 되살리기 = 729 30.09 검색 패턴 및 글로벌 명령어 이용하기 = 730 30.10 ex와 vi에서 치환 확인하기 = 732 30.11 원본 파일을 보존하고 새 파일로 쓰기 = 733 30.12 파일의 일부분을 저장하기 = 734 30.13 기존 파일에 덧붙이기 = 734 30.14 패턴을 이용하여 텍스트 블록을 옮기기 = 735 30.15 유용한 글로벌 명령어들(패턴 매칭 활용) = 736 30.16 등장 횟수 세기: 검색 랩 멈추기 = 738 30.17 라인에 있는 모든 단어를 대문자로 변환하기 = 739 30.18 각각의 파일에 대한 vi 옵션을 자동으로 설정하기 = 740 30.19 모드라인: 버그인가 가능인가? = 740 30.20 다중 편집 설정 파일 : 검색부터 시작하기 = 742 30.21 각기 다른 파일별 설정 = 743 30.22 UNIX 명령어를 통한 텍스트 필터링 = 743 30.23 안전하게 vi 필터를 통과시키기 = 746 30.24 vi/ex 파일 복구 및 네트워크 파일시스템 = 748 30.25 vi -r은 편집 종료 시 복구 버퍼에 기록하지 않을 수도 잇다 = 749 30.26. 쉘 이스케이프: 다른 명령어를 실행하면서 다른 UNIX 명령어 실행하기 = 749 30.27 vi 복합 검색 = 751 30.28 ctags와 tag로 함수와 인클루드 파일 추적하기 = 753 30.29 여러 개의 tags 파일 설정하기 = 754 30.30 두 가지 기능의 펑션키 처리 = 754 30.31 vi 단어 축약어 = 755 30.32 vi 축약어를 명령어로 이용하기(vi들간의 잘라내기 및 붙이기) = 757 30.33 vi 축약어를 이용하여 오타 수정하기 = 758 30.34 vi의 라인 명령어와 문자 명령어 = 758 30.35 임시 공간이 부족한가? 다른 디렉토리를 이용하자 = 760 30.36 ex 오픈 모드가 유용한 경우 = 761 30.37 라인 깔끔하게 편집하기 = 763 30.38 Undo를 이용하여 위치 찾기 = 765 31장. vi에서 커스텀 명령어 만들기 = 767 31.01 왜 여러분들이 해야 하는 것보다 더 많이 입력하는가? = 767 31.02 vi 맵 명령어를 이용한 입력과 시간 절약 = 768 31.03 map! 명령어 사용의 손실 = 771 31.04 vi @-함수 = 772 31.05 vi를 실행한는 윈도우를 복사하기 위한 키맵 = 776 31.06 ex에 의한 키 해석 방지 = 777 31.07 반복적인 편집을 위한 맵 = 778 31.08 vi에서의 키 맵핑의 다양한 예 = 780 31.09 .exrc 파일을 위한 유용한 도구 = 781 31.10 vi 키맵을 반복해서 실행하기 = 786 31.11 CAPS LOCK을 사용하지 않고 대문자 쓰기 = 787 31.12 텍스트 입력 모드에서의 커서 동작 = 788 31.13 텍스트 입력 모드에서 커서 키 만들기 = 789 31.14 간과하기 쉬운 중요한 맵의 기능 : noremap 이용 = 790 31.15 복잡한 매크로 이용하기 = 790 31.16 긴 라인을 분리하는 vi 매크로 = 791 32장. GNU Emacs = 793 32.01 Emacs: 그밖의 편집기들 = 793 32.02 Emacs의 기능: 목록 = 794 32.03 자신에게 맞는 환경 설정하기 = 796 32.04 백업과 파일 자동저장 = 797 32.05 수정 모드에서 Emacs 편집하기 = 798 32.06 명령어 입력 대행 = 799 32.07 타이핑이 빠른 사람에게 시간 절약을 = 799 32.08 검색 기능 = 800 32.09 Emacs를 사용하기 전에 PWD 재설정 = 802 32.10 파일에 바이너리 문자 삽입하기 = 803 32.11 축약어 모드 사용하기 = 803 32.12 Emacs에서의 흐름 제어 문제 = 805 32.13 재미있는 기능 = 806 33장. 배치 편집 = 809 33.01 라인 편집기의 놀라움 = 809 33.02 편집 스크립트 작성하기 = 810 33.03 라인 위치 지정 = 811 33.04 유용한 ex 명령어 = 812 33.05 vi안에서 편집 스크립트 실행하기 = 816 33.06 한 번 편집으로 여러 파일들을 변경하기 = 817 33.07 ed/ex 배치 편집:"no matches" 에러 피하기 = 818 33.08 배치 편집 : 큰 파일 편집 시 에러처리 = 819 33.09 patch : 파일 변경 방법 = 820 33.10 qsubst를 이용하여 명령행에서의 빠른 변경 = 822 33.11 빠른 참조: awk = 823 33.12 awk의 버전 = 834 34장. 스트림 편집기 sed = 837 34.01 sed에 대해 알아야 하는 2가지 사항 = 837 34.02 sed 실행하기 = 838 34.03 sed 스크립트 테스트하고 이용하기: checksed, runsed = 839 34.04 sed 라인 지정 방법 = 841 34.05 스크립트 내의 명령어들의 순서 = 843 34.06 한 번에 하나씩 = 844 34.07 정규표현식 구분 짓기 = 844 34.08 sed 치환 구문 내의 뉴라인 = 845 34.09 치환문에서 검색 문자열 참조하기 = 846 34.10 검색 문자열의 일부분을 참조하기 = 847 34.11 검색과 치환: 여러 개 중에서 하나만 매치 = 848 34.12 텍스트 변환 = 849 34.13 대기 공간: 곁가지 버퍼 = 850 34.14 라인의 일부분 변환하기 = 852 34.15 라인을 넘나들며 편집하기 = 854 34.16 열심히 일하는 비서 = 858 34.17 여러 라인에 걸쳐 분리되어 있는 패턴 찾기 = 860 34.18 다중라인 지우기 = 862 34.19 특정 부분을 제외하고 편집하기 = 863 34.20 sed의 Test 명령어 = 865 34.21 sed의 Quit 명령어 사용하기 = 866 34.22 sed의 Quit 명령어 위험성 = 867 34.23 sed 쉘 스크립트에서의 뉴라인, 인용부호, 백슬래시 = 867 34.24 빠른 참조 : sed = 868 35장. 편집의 한계 극복 = 879 35.01 못할 것이 없다! = 879 35.02 fmt를 이용해서 텍스트 다듬기 = 880 35.03 fmt의 변형 = 881 35.04 recomment : 프로그램의 주석문 블록 청소 = 882 35.05 메일과 뉴스 메시지의 헤더를 제거하는 behead = 884 35.06 dd를 이용한 파일 다루기 = 885 35.07 offset : 텍스트 들여쓰기 = 886 35.08 파일의 라인들을 가운데 맞춤하기 = 887 35.09 파일 조각내기 : split = 888 35.10 구문 내용에 의해 파일을 조각내기: csplit = 891 35.11 tr을 이용하여 문자 바꾸기 = 894 35.12 ASCII와 EBCDIC 간의 변환 = 896 35.13 dd를 이용한 기타 변환 = 897 35.14 cut을 이용해서 열이나 필드를 잘라내기 = 898 35.15 colrm을 이용해서 열들을 잘라내기 = 898 35.16 cols를 이용해서 열을 자동으로 생성하기 = 899 35.17 pr을 이용해서 열 속에 텍스트 만들기 = 901 35.18 열 속에 붙이기 = 903 35.19 join을 이용해서 라인들을 붙이기 = 904 35.20 빠른 참조 : uniq = 905 35.21 IFS를 이용해서 문자열 분리하기 = 906 35.22 들쭉날쭉한 열을 깔끔하게 다듬기 = 908 35.23 텍스트 돌리기 = 909 36장. 정렬 = 911 36.01 순서대로 정렬하기 = 911 36.02 필드 정렬 : sort 명령의 동작 원리 = 912 36.03 필드 구분자 바꾸기 = 914 36.04 필드 구분자가 공백일 때의 문제점 = 914 36.05 알파벳 정렬과 숫자 정렬 = 917 36.06 정렬에 대한 다양한 힌트 = 918 36.07 여러 라인 단위로 정렬하기 = 920 36.08 lensort : 라인 길이별로 정렬하기 = 921 36.09 성으로 이름 목록 정렬하기 = 922 37장. Perl, 못하는 게 없는 도깨비 방망이 = 923 37.01 Perl에 관해 이 책에서 다룰 내용 = 923 37.02 Perl을 배워야 하는 이유 #1 = 924 37.03 훌륭한 프로그래머로서 갖추어야 할 3대 덕목 = 926 37.04 Perl을 배워야 하는 이유 #2 = 927 37.05 자, 이제 Perl 5에 대해 이야기하자 = 931 6부. 프로세스 관리 38장. 프로세스 시작, 정지, 그리고 종료 = 935 38.01 이번 장에 포함된 내용들 = 935 38.02 fork, 그리고 exec = 936 38.03 프로세스 관리 : 전반적 개념들 = 937 38.04 서브 쉘 = 940 38.05 ps 명령어 = 942 38.06 제어 터미널 = 945 38.07 왜 ps 는 어떤 명령어들을 괄호 안에 넣어서 보여주는가? = 946 38.08 시그널이란? = 947 38.09 포그라운드 작업 죽이기 = 949 38.10 kill 명령어로 프로세스 죽이기 = 950 38.11 프린터 큐 감시자 : 재 기동시킬 수 있는 데몬 쉘 스크립트 = 952 38.12 자신의 모든 프로세스들을 죽이기 = 954 38.13 패턴과 일치하는 프로세스들을 대화식으로 죽이기 = 955 38.14 폭주되고 있는 프로세스들 = 956 38.15 죽일 수 없는 프로세들을 정리하기 = 957 38.16 왜 좀비 프로세스를 죽일 수 없는가 = 958 38.17 csh에서 로그아웃할 때 백그라운드 프로세스들을 자동으로 죽이기 = 959 38.18 nohup = 960 39장. 시간과 성능 = 963 39.01 어떤 시간을 의미하는가? = 963 39.02 시간측정 프로그램 = 963 39.03 csh의 time 변수 = 965 39.04 runtime을 이용한 명령어 평균 실행 시간 구하기 = 968 39.05 왜 시스템이 이렇게 느린거지? = 969 39.06 lastcomm : 현재 어떠한 명령어들이 실행되고 있으며 그것들은 얼마나 오랫동안 실행되고 있는가? = 972 39.07 시스템 부하 검사 : uptime = 974 39.08 커다란 환경은 여러분의 작업을 느리게 할 수 있다 = 975 39.09 언제 다른 사용자들에게 "nice" 해져야 하는지 그리고 언제 그래선 안되는지 = 976 39.10 nice에 관한 잘 알려진 비밀 = 981 39.11 BSD UNIX 상에서 우선순위 변경하기 = 981 39.12 무엇이 컴퓨터를 느리게 만드는가? 그리고 어떻게 해결 할것인가? = 982 40장. 나중에 실행하기 = 987 40.01 한가한 시간을 활용하기 = 987 40.02 잠시 기다리기 : sleep = 988 40.03 at 명령어 = 989 40.04 at에 의해 사용될 쉘 선택하기 = 990 40.05 다른 at 또는 cron 작업들을 피하기 = 992 40.06 시스템 V.4 배치 큐 = 993 40.07 at 작업이 조용히 실행되게 하기 = 994 40.08 at 작업이 자동적으로 다시 실행되게 하기 = 995 40.09 작업 확인 및 삭제 = 995 40.10 nextday, nextweekday : 내일 또는 다음주 = 997 40.11 여러분 자신에게 재확앤 메일 보내기 = 998 40.12 주기적 프로그램 실행 : cron 설비 = 999 40.13 crontab 항목 추가하기 = 1003 40.14 cron 항목에서 표준 입력 포함하기 = 1004 40.15 crontab 편집을 더 쉽고 안전하게 만드는 crontab 스크립트 = 1004 7부. 터미널과 프린터 41장. 터미널과 시리얼 라인 설정 = 1009 41.01 조금 더 깊이 파고들기 = 1009 41.02 stty와 그런 모든 도구들 = 1010 41.03 stty로 터미널 설정 알아내기 = 1018 41.04 UNIX가 탭 문자를 다루는 방법 = 1018 41.05 일부 시스템이 프롬프트를 넘어서 백스페이스하는 이유 = 1021 41.06 포트 세팅을 유지하기 위해 sleep 사용하기 = 1023 41.07 터미털에서 매우 긴 라인 읽기 = 1023 41.08 pty와 윈도우 시스템 = 1024 41.09 터미널을 조절하는 명령어들 = 1025 41.10 쉘 프로그램에서 terminfo 기능 사용하기 = 1027 41.11 termcap과 terminfo가 터미널을 설명하는 방법 = 1028 41.12 터미널의 특수키라 어떤 문자를 보내는지 알아내기 = 1035 42장. 터미널에 생기는 문제들 = 1037 42.01 엉망이 된 터미널에서 의미 찾기 = 1037 42.02 엉망이 된 터미널이나 작업 고치기 = 1039 42.03 가끔 TERM을 바꾸는 것이 안되는 이유 = 1043 42.04 엉망이 된 터미널을 리셋하기 위한 점검표 = 1043 42.05 점검표 : 화면 크기가 엉망인가? = 1047 42.06 화면 크기를 검사하는 파일들 = 1051 42.07 termtest : 터미널에 반복되는 문자 보내기 = 1054 42.08 에러가 너무 빨리 지워지는가? 이런 해결책은 어떤가? = 1055 43장. 프린트하기 = 1057 43.01 프린팅의 소개 = 1057 43.02 UNIX에서의 프린팅의 소개 = 1059 43.03 Ipc를 이용한 프린터 제어 = 1061 43.04 다른 프린터 사용하기 = 1063 43.05 스풀링을 위해 심볼릭 링크 사용하기 = 1064 43.06 터미널 프린터에 프린트하기 = 1065 43.07 프린트하기 전에 임시방편으로 포맷팅하기 = 1066 43.08 pr과 fold로 여백 결정하기 = 1068 43.09 프린팅을 위해 텍스트를 들여쓰기 = 1069 43.10 pr없이 파일 위에 파일명 헤더쓰기 = 1070 43.11 큰 글자들 : banner = 1072 43.12 조판 개요 = 1073 43.13 텍스트 포맷터들 nroff, troff, ditroff, .... = 1076 43.14 nroff/troff와 매크로 패키지 = 1078 43.15 소스 파일을 프린터로 보내기 = 1078 43.16 groff = 1081 43.17 nroff가 없는가? gnroff나 awf를 시도해 보자 = 1081 43.18 nroff가 볼드체와 밑줄을 만드는 방법 : 그것을 없애는 방법 = 1082 43.19 앞부분의 탭과 그밖의 사소한 것 없애기 = 1084 43.20 troff 매크로 저의 표시하기 = 1086 43.21 sed로 troff 입력을 전처리하기 = 1087 43.22 텍스트 파일을 포스트스크립트로 변환하기 = 1090 43.23 psselect : 포스트스크립트 파일에서 일부 페이지를 프린트하기 = 1092 43.24 그밖의 포스트스크립트 유틸리티들 = 1093 43.25 이식 가능한 비트맵 패키지 = 1095 8부. 쉘 프로그래밍 44장. 초보자를 위한 쉘 프로그래밍 = 1105 44.01 모두가 배워야 하는 쉘 프로그래밍 = 1105 44.02 간단한 쉘 프로그램 작성하기 = 1108 44.03 도대체 쉘이란 무엇인가? = 1110 44.04 시스템이 파일을 실행하는 방법 테스트하기 = 1112 44.05 Bourne 쉘의 case를 이용한 문자열 값 테스트하기 = 1114 44.06 case문에서의 패텬 매칭 = 1115 44.07 UNIX 프로세스의 종료 상태 = 1115 44.08 if 구문으로 종료 상태 테스트하기 = 1117 44.09 성공 여부 테스트하기 = 1118 44.10 종료 상태를 테스트하는 순환문 = 1119 44.11 쉘(스크립트)의 종료 상태 설정하기 = 1121 44.12 인터럽트로 인해 종료 트랩하기 = 1122 44.13 read : 키보드로부터 읽기 = 1124 44.14 쉘 스크립트 안에 awk, sed 등을 넣기 = 1125 44.15 쉘 스크립트에서 명령행 인자 다루기 = 1126 44.16 for 순환문으로 명령행 인자 다루기 = 1128 44.17 while과 shift로 인자 다루기 = 1130 44.18 표준 명령행 구문분석 = 1132 44.19 Bourne 쉘의 set 명령어 = 1134 44.20 test : 파일과 문자열 테스트하기 = 1136 44.21 새로운 명령어를 위한 이름 고르기 = 1137 44.22 프로그램 이름 찾기 : 복수 개의 프로그램 이름 = 1138 44.23. .과 source 명령어로 파일 읽기 = 1139 45장. 고수를 위한 쉘 프로그래밍 = 1141 45.01 쉘 환경을 내 맘대로 = 1141 45.02 : #, #!의 역사 = 1143 45.03 쉘이 필요없는 스크립트 = 1144 45.04 재미있는 #! = 1145 45.05 내용을 보여주는 파일 및 #!의 역할 = 1147 45.06 #!이 없이도 Bourne 쉘로 실행되도록 쉘을 작성하기 = 1148 45.07 exec명령어 = 1149 45.08 자식 프로세스로 시그널 넘기기 = 1150 45.09 Bourne 쉘의 ":" 연산자 = 1152 45.10 편리함과 보안을 위해 오픈된 파일을 삭제하기 = 1153 45.11 다목적 jot 명령어 = 1154 45.12 파라미터 치환 = 1158 45.13 디스크 공간과 프로그래밍 수고를 덜기 : 하나의 프로그램에 여러 이름을 주기 = 1160 45.14 마지막 명령행 인자를 찾기 = 1161 45.15 명령행 파라미터를 모두 unset하는 방법 = 1162 45.16 표준 입력을 for 순환문으로 = 1162 45.17 여러 개의 변수들을 이용한 순환문 만들기 = 1163 45.18 basename과 dirname 이용하기 = 1164 45.19 여러 순환문 제어 명령어들을 이용하는 while 순환문 = 1166 45.20 오픈 파일 및 파일 기술어 = 1167 45.21 n>&m : 표준 출력과 표준 에러를 서로 바꾸기 = 1169 45.22 파일을 라인 단위로 처리하기 = 1173 45.23 리다이렉트된 I/O 순환문의 입력과 출력 = 1177 45.24 쉘이 표준 입력으로부터 스크립트를 읽을 수 있다. 그러나... = 1179 45.25 표준 입력으로부터 작성하는 즉석 쉘 스크립트 = 1179 45.26 "here" 문서를 인용 처리할 때의 문제점 : sh 대 csh = 1181 45.27 “비밀스러운” 대답을 받을 때는 echo를 꺼놓자 = 1181 45.28 빠른 참조 : expr = 1182 45.29 expr을 이용해서 문자열 내의 문자들을 테스트하기 = 1185 45.30 문자열의 일부분을 포획하기 = 1185 45.31 중첩된 명령어 치환 = 1188 45.32 read명령어보다 더 좋은 grabchars = 1190 45.33 하나의 case를 이용해서 두 개의 문자열을 테스트하기 = 1192 45.34 Bourne 쉘의 배열 = 1192 45.35 스크립트 내에서 제어 문자 이용하기 = 1194 45.36 쉘의 잠금파일 = 1195 46장. 쉘 스크립트 디버깅 = 1199 46.01 쉘 스크립트 디버깅을 위한 팁 = 1199 46.02 인용 처리에 문제가 있다면 잘 생각해 보고 echo를 사용하자 = 1201 46.03 쉘 변수를 보여주는 Bourne 쉘 디버거 = 1202 46.04 숫자를 비교할 때 문법 에러 방지하기 = 1203 46.05 문자열을 비교할 때 문법 에러 방지하기 = 1204 46.06 Bourne 쉘 -e 옵션의 버그를 조심하자 = 1205 46.07 인용 처리와 명령행 파라미터 = 1206 46.08 내장 명령어의 실행 실패 테스트 = 1208 46.09 명령어가 상태를 리턴하지 않으면 에러 메시지를 확인하라 = 1209 46.10 이식성이 좋은 echo 명령어 = 1210 47장. C 쉘 프로그래밍은... 곤란해! = 1213 47.01 왜? = 1213 47.02 해롭다고 간주되는 C 쉘 프로그래밍 = 1214 47.03 if를 이용한 조건문 = 1222 47.04 C 쉘 변수 연산자와 표현식 = 1223 47.05 C 쉘 배열 이용하기 = 1227 47.06 C 쉘의 switch문 = 1228 9부. 잡동사니 48장. 사무자동화 = 1233 48.01 음, 다른 적당한 말이 있을까? = 1233 48.02 온라인 전화/주소록 = 1234 48.03 화면위에 메모장을 = 1236 48.04 자동 재확인 또는 그 이상 : calendar = 1236 48.05 leave : 오! 마칠 시간이라네! = 1239 48.06 어떤 날짜에 대해서도 달력을 보자 : cal = 1240 48.07 cal은 오늘 날짜를 확실히 알려준다 = 1241 48.08 132열 터미널 또는 프린터를 위한 달력 = 1243 48.09 pcal을 가지고 포스트스크립트 달력 얻기 = 1243 48.10 이름과 주소 다루기 = 1246 48.11 인덱스 데이터베이스 프로그램 = 1253 48.12 필터와 함께 인덱스 사용하기 = 1256 49장. 수 다루기 = 1259 49.01 bc : 쉘 프롬프트에서 간단한 산수를 = 1259 49.02 bc : 16진수 또는 8진수 변환 = 1260 49.03 진수변환 시 주의사항 = 1261 49.04 bc의 사인, 코사인의 단위는 라디안 = 1262 49.05 cvtbase를 사용한 진수변환 = 1263 49.06 expr를 사용한 빠른 연산 = 1264 49.07 addup으로 열의 값들을 합계내기 = 1264 49.08 스프레드쉬트가 있었으면 좋을텐데 = 1265 49.09 ipl로 사무용 그래픽을 = 1267 50장. 온라인 문서 기능과 그 외의 것들 = 1269 50.01 UNIX의 온라인 문서 = 1269 50.02 apropos 명령어 = 1271 50.03 apropos가 없는 시스템 상에서 apropos = 1271 50.04 whatis : 온라인 명령어 요약 = 1274 50.05 whereis : 명령어가 어디에 있는지 찾기 = 1274 50.06 온라인 매뉴얼 페이지 탐색하기 = 1275 50.07 어떻게 UNIX 시스템이 시스템 이름을 기억하고 있을까? = 1277 50.08 어떤 버전을 사용하고 있을까? = 1277 50.09 인덱스 읽는 법 = 1279 50.10 troff를 배우지 않고 자신만의 맨페이지 만들기 = 1281 50.11 -man 매크로를 사용하여 간단한 매뉴얼 페이지 작성하기 = 1283 50.12 공통UNIX 에러 메시지들 = 1286 51장. 자잘하지만 유용한 프로그램들 = 1291 51.01 드디어 끝이 보인다 = 1291 51.02 어떻게 UNIX는 시간을 유지할까? = 1291 51.03 아스키 문자들: 값들을 나열하고 얻는 법 = 1292 51.04 누가 지금 사용 중일까? = 1294 51.05 script를 사용해서 무엇을 했는지 기록하기 = 1294 51.06 script 파일 정리하기 = 1295 51.07 성급한 사람들을 위해 = 1296 51.08 Bang Splat을 입력하라. Rabbit Ears를 잊지말자 = 1297 51.09 "로그인" 쉘 만들기 = 1298 51.10 date 명령어 = 1299 51.11 테스트를 위해 임의 크기의 파일을 만들기 = 1300 51.12 전자우편의 웃는 얼굴 = 1301 52장. CD-ROM에 수록된 내용 = 1303 52.01 소개 = 1303 52.02 어디서 공짜 스프트웨어가 끝나고 UNIX가 시작될까? = 1304 52.03 UNIX를 위한 일반 소비자용 소프트웨어 = 1305 52.04 디스크 수록내용에 대한 요약설명 = 1306 52.05 파워 툴의 CD-ROM을 사용하기 = 1327 52.06 CD-ROM 드라이브가 없다면? = 1341 52.07 소프트웨어를 얻는 다른 방법들 = 1342 52.08 소스 코드 컴파일하기 = 1345 52.09 RTR(Ready-to-Run)의 소프트웨어 지원 = 1361 53장. 용어 정리 = 1363 찾아보기 = 1375
