오늘은 대한입니다.
sun's longitude:299 58 46.17 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/delete.php:소스보기  

질문과 답변 게시판입니다.

현재 실시간으로 이곳 서버의 설정파일(몇개)를 보여주고 있습니다.
서버의 설정내용에 관한 질문은 먼저 이곳 서버의 설정내용을 참고하시길 바랍니다.

[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
 ★ 글 지우기 항목입니다. 한번 더 생각하시고 결정하십시오.!!!
제목 3009 번 글의 답장글 : 양쪽 모두 ` `를 사용하시면 될듯.
 이름  정한우(oklinux@hanmail.net)

>
>rpm -e --nodeps 'rpm -qa | grep apache'
>

말로 설명하면, 또는 커맨드 그 자체로 보면 더 간단한데
글로 설명하면 더 헛갈리는게 유닉스의 쿼팅인 듯합니다. 
눈을 크게 뜨고 (^^) 읽어보세요.

쉘 스크립트에서 쿼우팅(quoting)과 관련된 문제입니다.
양쪽모두 역인용부호(back quotation mark [키보드 1 옆에 있는거] )를
사용하시면 될것 같은데요.

쉘에서 쿼우팅은 쌍따옴표(" "), 따옴표(' '), 백슬래쉬(\), 이 세가지를 주로 사용합니다.
자료를 보면
문자열을 따옴표로 묶는 것이 쿼우팅인데
이렇게 하는 이유는 '문자열 안에 특수문자가 들어있을 경우
쉘에의해 그 특수문자가 재해석되거나 확장되는 것을 방지하기위해'라고
정의되어있습니다.
특수문자란 * # | ; & \ 등등을 말하며 이것들은 쉘에서 특수한 의미를
가지고 있습니다. 예로, 아스테리크(*)는 모든 것이죠??

쌍따옴표 " "는 $, ` `, \를 제외한 모든 특수문자(열)들을 보존합니다.
따옴표 ' '는 " "보다 더 엄격하게 모든 특수문자를 보존합니다. 즉 특수문자(열)의 특수한 의미를 무효화합니다.
이거말고 역슬래쉬 \는 문자<한 개>의 의미를 그대로 살려주고요.

그런데 역인용부호( ` ` ) - 키보드 1 옆에 있는 거 - 는 명령어 치환에 관계되는 것으로 한 명령어에서 나온 출력(결과)를 다른 명령어의 인자로 사용하게 해줍니다. 
위의

  rpm -e --nodeps 'rpm -qa | grep apache'    는

` ` 안에 잇는 rpm -qa | grep apache 의 결과(만약에 그 결과가 APACHE라면)를 앞쪽에 있는  rpm -e --nodeps라는 명령의 인자로 (APACHE를)넣는 것이겠죠?
결국 rpm -e --nodeps APACHE가 되는 것이겠죠?

--->
1)rpm 명령어에 옵션 q와 a를 사용하여 패키지를 나열한 뒤 2)그 결과 중에서 apache라는 단어가 들어 있는 것(패키지의 정식이름)을 찾은 뒤(grep)
3)rpm -e --nodeps 패키지이름을 통해 의존성문제를 무시하고 지워라.

저는 무식하게 그냥 rpm -qa | grep apache 한번 때리고 결과가 나오면
rpm -e --nodeps 결과 
이런식으로 하겠습니다만... 
고수들은 이렇게 한다죠? 
실은 고수들이 명령어상에서 이렇게 한다기 보다 작업을 자동화시키는 쉘 스크립트 안에서 이렇게 사용한다고 생각하는게 맞을 듯합니다.
실제 커맨드상에서 이렇게 했는데 혹시라도 에러가 나면(철자가 틀려서 ^^)
오히려 더 복잡해질 수도 있잖아요??

도움이 되었는지 모르겠습니다. 
저도 덕분에 다시 한번 자료 찾아보고 공부하였습니다. 
간단한거 같은데 맨날 헷갈려서리..

2003년 02월 06일 20:55:37 목(저녁)  from 218.144.184.10
0
암호: 공용 보안 SSL 서버가 준비되기 전까지는 off 합니다

apache lighttpd linuxchannel.net 
Copyright 1997-2026. linuxchannel.net. All rights reserved.

Page loading: 0.01(server) + (network) + (browser) seconds