티스토리 뷰



서버를 접속한 상태에서 특정한 파일을 찾는 방법은 리눅스나 유닉스의 경우에는 "find" 명령을 통해서 이름이나 변경 일시와 같은 기준으로 해당 기준에 맞는 파일을 찾을 수 있습니다. 윈도우의 경우에는 아래의 그림과 같이 탐색기의 검색 기능을 활용하여 파일 이름, 변경일시, 크기등을 기준으로 파일을 검색할 수 있습니다.



그렇지만 파일 전송을 다루는 FTP 프로토콜 규약에는 파일을 주고 받고 디렉토리의 파일 목록을 조회하는 명령은 있지만 특정 파일을 찾아내는 명령은 존재하지 않습니다. 아래의 그림은 파일질라 서버>사용자 명령어 입력 메뉴로 "help" 명령을 입력하여 FTP 서버가 지원하는 명령의 리스트를 확인한 것입니다.



파일전송 과정에서 서버에 있는 특정한 파일을 찾는 방법은 파일질라의 서버>리모트 파일 검색 메뉴 또는 F3 단축키를 활용하는 것입니다. 


FTP에서 파일을 찾아내는 원리는 리모트 파일 검색을 직접 수행해 보면 금방 확인할 수 있습니다. 파일질라가 각 디렉토리를 따라가며 자동으로 조회하고 조회 결과로 서버에서 전달된 파일 목록을 검색하여 검색 조건에 해당하는 파일을 추출해 주는 것입니다.

위의 그림에서 보듯이 "검색 디렉터리" 항목에 검색을 시작할 서버의 폴더를 지정합니다. 두번째는 "검색 조건" 항목으로 필터의 역할을 하며 바로 아래 창에서 지정할 검색 조건을 어떻게 다룰것인지를 아래와 같이 지정합니다.

  • 아래와 모두 일치 : 조건이 N개면 N개의 조건을 모두 만족하는 파일을 추출합니다.

  • 아래와 하나라도 일치 : N개의 조건중에 한개의 조건이라도 만족하는 파일을 추출합니다.

  • 아래와 하나도 일치 안함 : N개의 조건을 모두 피한 파일을 추출합니다.


검색조건 아래의 조건 창에 조건이 하나도 없을 때는 시작 폴더 이하의 모든 파일을 추출합니다.

위의 그림은 파일명에 "trac" 를 포함하고 있고 마지막 변경일시가 "2014-04-01" 이후인 파일을 검색하는 복합 조건입니다. 조건을 추가하려면 우측의 [+]버튼을 누르고 조건을 삭제하려면 [-] 버튼을 누르면 됩니다.

검색 조건에 사용할 수 있는 비교 대상과 비교 방법은 아래의 그림과 같습니다.

'=', '다음과 일치' 비교는 입력한 값과 파일의 비교 대상과 완전히 일치하는 것을 의미하고 '포함', '다음으로 시작', '다음으로 종료' 등은 문자열의 일부에 대한 포함여부를 검사하는 비교 방식을 의미합니다. 다른 비교 방식은 연산자 자체로 의미 전달이 가능한데 "정규식 일치"의 경우에는 약간 복잡한 조건을 지정하기 위한 특수 기능으로 예를 들면 서버의 로그 파일이 "log20150101.log"와 같이 파일명에 날짜를 가지고 있을때 2015년 1월의 로그 파일을 모두 찾으려면 파일명을 검색대상의 하고 "정규식일치"를 비교 방식으로 지정한 다음 비교값을 "log201501*.log"로 입력하면 됩니다. 파일질라에서 사용할 수 있는 정규식은 일반적인 정규식과는 달리 제한적인 규칙을 적용하므로 아래의 규칙을 참조하셔서 사용하시면 효과적인 검색에 활용할 수 있습니다.

  • '.' : 임의의 한 문자 
  • '*' : 바로 앞의 토큰 0~N개와 일치, 반드시 앞으로 임의의 문자가 있어야 합니다.
  • '?'바로 앞의 문자 0개 또는 1개 일치 
  • '^' : 바로 다음 문자로 시작하는 문자열과 일치
  • '$' 바로 앞의 문자로 끝나는 문자열과 일치
  • '\' : 에스케이프 문자로 위의 언급한 특수 문자 자체를 검색할때 사용합니다

위에서 언급한 정규식으로 m문자로 시작하고 f문자로 끝나는 모든 파일을 검색하는 정규식은 "^m.*f$"로 사용할 수 있습니다.



검색 결과창에서는 위의 그림과 같이 마우스 우측 버튼으로 팝업 메뉴를 띄워서 해당 파일을 로컬로 다운로드하거나 삭제할 수 있습니다. FTP 기능으로 서버의 모든 파일을 찾는 것이 파일질라를 사용하면 편리한 측면은 있지만 목록을 내려받아 검색하기 때문에 그리 효율적이라고 할수는 없습니다. 규모가 큰 파일 서버 전체를 뒤지는 것이라면 터미널 접속이 가능하다면 터미널 명령을 통해서 파일을 찾는 것이 지혜로운 방법일 것입니다.

그렇지만 규모가 아주 크지 않은 시스템이거나 파일 검색후 작업이 다운로드나 삭제일 경우에는 파일질라의 리모트 파일 검색은 좋은 작업 일 수 있습니다.


댓글
댓글쓰기 폼