질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

특정 파일만 빼고 모두 지울 때

작성자 정보

  • 초혼 작성
  • 작성일

컨텐츠 정보

본문

모두 지우되.. 이것들은 지우지 말아라.

URL : http://kltp.kldp.org/stories.php?story=01/02/14/5138721

글쓴이 : 하고파 (2001년 02월 14일 오후 04:18)

지정한 파일외에 다 지우기..
가령 디렉토리 안에..
report report_1 report_2 report_3
report_4 report_5 print_1 print_2

위같은 파일이 있씁니다.
저는 report 는 나두고 다지우고
싶습니다.
그냥은 하나씩 rm 을써서
하나씩 지우다가 report 만 안지우면 되겠지만 한번의 명령어로 지우려면 다음과 같이 하면 되겠죠..

rm -f `ls |grep -v '^report$'`

이렇게 하면 report 만 남습니다.

이건 역인용부호 `` 즉 명령어 치환에 의해 가능한것입니다. ls를 써서 파일목록이 출력되면 파이프를 통해 grep의 입력으로 들어가겠죠.. 그다음 grep의 출력이 역인용부호(``)를 이용해서 결과를 rm 으로 전달 되는것입니다.
참고로
rm 의 -f 붙인이유는 어차피 지울꺼니 확실히 지우자구요. :-) 겁나시는분은 -i 로 교체.
grep의 -v 옵션은 매치되지 않는 패턴을 찾는 옵션입니다. 반전이라고 해도 틀리지는 않겠습니다. :-)
grep의 ^은 앞부분을 말하는거구
$은 뒤를 명시해주는거죠..
grep 정규식을 이용하면 정확히 파일을 구별해서 지울 수가 있겠군요..

 

Linux? Linux! : cafe.daum.net/linuxworld 제공

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  67 명