FREEDOM. FRIENDS. FEATURES. FIRST. 페도라 한국 사용자 모임

shell script 디렉토리만 출력하는 방법에 대해 여쭤 보겠습니다.

게시판 질문게시판 shell script 디렉토리만 출력하는 방법에 대해 여쭤 보겠습니다.

  • This topic has 1개 답변, 1명 참여, and was last updated 8 years, 9 months 전에 by
    난해주님. This post has been viewed 2450 times
  • #13693
    난해주님
    참가자
      게시글114 댓글334 총합448
    @workman729
     

    shell scripts 작성시에 디렉토리에 파일과 디렉토리가 혼재할 경우
    출력을 아래와 같이 파일과 디렉토리를 분리하는 것은 여러가지 방법은 있습니다.

    디렉토리만 출력할 경우

    # ls -d */
    # ls -l | grep ^d

    파일만 출력할 경우

    # ls -l | egrep -v ^d
    # ls -p | grep -v /

    등의 방법이 있는 데 출력시 여러 정보가 따라 붙습니다.

    출력되는 정보를 가져와서 그대로 압축을 해야 하는 데
    ls -d */ 를 사용할 경우 디렉토리 뒤에 "/" 붙습니다.

    예를 들어 아래와 같은 디렉토리가 있다면
    config/ help/ self/

    위의 출력을 이용하여 압축할 경우 에러가 납니다. 이유야 슬러쉬가 있으니까요...^^

    즉, 제가 원하는 것은 아래와 같이 슬러시 없이 정보가 출력되는 것을 원합니다.
    config help self

    슬러쉬 없이 이용할려면 ls -t 옵션을 이용하면 되지만 디렉토리와 파일의 구분이 없어지므로
    압축이 중구난방입니다.

    출력이 디렉토리만 뽑아와서 슬러쉬 없이 이용하는 방법이 없을 까요??

    그동안 디렉토리면 디렉토리, 파일이면 파일만 다루어서
    혼재되어 있는 경우엔 데이타를 뽑아내는 것은 문제가 없지만
    슬러쉬 없이 정보를 가져오려면 쓸데 없는 정보가 붙기 때문에 for 문 돌리기가 어렵습니다.

    뭔가 ls -t 말고는 방법이 없을까요??

0 답변 글타래를 보이고 있습니다
    • #15615
      난해주님
      참가자
        게시글114 댓글334 총합448
      @workman729
       

      음! 가방끈 짧아서 알고리즘이 생각났다 안났다 하는 군요!
      금방 생각을 정리하니 아래와 같이 해결 되었습니다.

      cd "/home/<username>/www"

      for i in $(ls -d */); do

      echo ${i%%/};
      tar ~~~ 생략

      done

       
0 답변 글타래를 보이고 있습니다
  • 답변은 로그인 후 가능합니다.

지금 이 순간


겨우 텍스트모드로 설치했더니......
페도라10 그래픽카드를 바꿨을 경우 x윈도로 못가는 문제
페도라 16 설치시 설치 종류 에대한 질문
cockpit을 이용한 리눅스(페도라) 시스템 가상화
SSD에 관해서 여쭤볼말이..
페도라 32비트를 64비트 PC에 설치할 수 있나요?
F34 업데이트 설치 후 구성
영자님을 따라잡을 날이 멀지 않았당~~!
으으으으 결국 F14 에서 ..
나도 이제 Level 2 =ㅅ=