>> Read Reply from No. 22544 article  
RE: C-Shell 스크립트 입니다 한번봐주세요

등록 2001-03-02 16:30:00     조회 1
이름 무정한    

		: 프로그램은 다음과 같습니다
: 한번 보시면 어떤 기능을 하는지 아실거 같습니다
:
: #
: # version 0.1
:
: if ($#argv != 2) then
:        echo "usage : lfind -[ld] filename"
:        exit 1
: endif
:
: set opt = $argv[1]
: set filename = $argv[2]
: set find = `(find / -name $filename -print > /dev/tty) >& /dev/null`
: set del = `(find / -name $filename -exec rm "{}" ;) >& /dev/null`
:
: if ($opt == '-l') then
:        echo $find
: else if ($opt == '-d') then
:        echo $del
: endif
:
: 문제는 이 스크립트를 예를 들어
:
: ./lfind -l test 라고 하면 잘 찾습니다.
:
: 그런데
:
: ./lfind -d test 라고 하면 test 라는 파일을 찾아서 지워야 하는데
: 똑 같이 파일 찾기를 합니다
: 다시 말해
: echo $del 이 실행되어야 하는데
: echo $find 가 실행이 됩니다
: 어디가 잘못된거죠?
: 여러분도 한번 해보세요..
: 글고 저좀 갈켜주세요..
: 부탁합니다...
 뭔가 의미심장한 스크립트임.
어떤 파일을 찾으려고만해도
찾으려는 파일을 지울 수 밖에 없는 스크립트.
 절대 루트로 위의 스크립트를 실행시키지 말것.
 원하는 작업을 위해 다음과 같이 해볼것.
 #!/bin/csh
#----------------------------------------------------------------
if ($#argv != 2) then
print_help:
        echo "usage : lfind -[ld] filename"
        exit 1
endif
 set opt = $argv[1]
set fn = $argv[2]
 switch ($opt)
        case -[lL]:
                echo "find and list... $fn"
                (find . -name $fn -print > /dev/tty) >& /dev/null
                breaksw
        case -[dD]:
                echo "find and remove... $fn"
                find . -name $fn -exec /bin/rm -i "{}" ;
                breaksw
        default:
                echo "invalid option"
                goto print_help
                breaksw
endsw
#-----------------------------------------------------------------
 find뒤의 /를 .로 수정하였음.
원하면 .을 /로 수정가능함.
 --
외로워라 이네몸은 뉘와함께 놀아날꼬.
이름
암호


>> 관련글
22544 C-Shell 스크립트 입니다 한번봐주세요  누노  2001.03.02  ....
  답장 RE: C-Shell 스크립트 입니다 한번봐주세요  무정한  2001.03.02  ....
Register [ localhost 목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 1.00 초 ] 작업시간: [ 0.07 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1789612872
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.