명령 줄을 사용하여 Linux에서 파일 및 폴더를 찾는 방법
대부분의 사람들은 그래픽 파일 관리자를 사용하여 Gnome의 Nautilus, KDE의 Dolphin 및 Xfce의 Thunar와 같은 Linux 파일을 찾습니다. 그러나 사용하는 데스크탑 관리자에 상관없이 Linux에서 파일을 찾기 위해 명령 행을 사용하는 몇 가지 방법이 있습니다.
찾기 명령 사용
"찾기"명령을 사용하면 대략적인 파일 이름을 알고있는 파일을 검색 할 수 있습니다. 가장 간단한 형식의 명령은 현재 디렉토리에있는 파일을 검색하고 제공된 검색 기준과 일치하는 하위 디렉토리를 반복적으로 검색합니다. 이름, 소유자, 그룹, 유형, 권한, 날짜 및 기타 기준으로 파일을 검색 할 수 있습니다..
프롬프트에서 다음 명령을 입력하면 현재 디렉토리에있는 모든 파일이 나열됩니다.
발견 .
"find"다음의 점은 현재 디렉토리를 나타냅니다..
특정 패턴과 일치하는 파일을 찾으려면 -이름
논의. 파일 이름 메타 문자 (예 : *
),하지만 이스케이프 문자 ( \
)를 각 앞에 붙이거나 따옴표로 묶으십시오.
예를 들어 Documents 디렉토리에서 "pro"로 시작하는 모든 파일을 찾으려면 cd 문서 /
명령을 사용하여 Documents 디렉터리로 변경 한 후 다음 명령을 입력합니다.
찾아라. -name pro \ *
"pro"로 시작하는 현재 디렉토리의 모든 파일이 나열됩니다..
참고 : find 명령의 기본값은 대소 문자를 구분합니다. 대 / 소문자를 구분하지 않는 단어 나 구를 검색하려면 -이네
옵션을 사용하십시오. 대소 문자를 구별하지 않는 버전입니다. -이름
명령.
만약 발견
조건에 맞는 파일을 찾지 못하면 출력이 생성되지 않습니다..
find 명령에는 검색을 구체화하는 데 사용할 수있는 많은 옵션이 있습니다. find 명령에 대한 자세한 내용을 보려면 다음을 실행하십시오. 남자가 찾는다.
터미널 창에서 Enter 키를 누릅니다..
Locate 명령 사용
locate 명령은 이전에 빌드 된 데이터베이스를 사용하기 때문에 find 명령보다 빠르지 만 find 명령은 모든 실제 디렉토리 및 파일을 통해 실제 시스템에서 검색합니다. locate 명령은 지정된 문자 그룹을 포함하는 모든 경로 이름 목록을 리턴합니다..
데이터베이스는 cron에서 주기적으로 업데이트되지만 언제든지 업데이트 할 수 있으므로 최신 결과를 얻을 수 있습니다. 이렇게하려면 프롬프트에서 다음 명령을 입력하십시오.
sudo updatedb
메시지가 나타나면 암호를 입력하십시오..
locate 명령의 기본 형식은 루트에서 시작하여 검색 기준의 전부 또는 일부를 포함하는 파일 시스템의 모든 파일을 찾습니다.
mydata 찾기
예를 들어, 위의 명령은 "mydata"를 포함하는 두 개의 파일과 "data"를 포함하는 한 개의 파일을 찾았습니다.
검색 조건을 정확하게 포함하는 모든 파일이나 디렉토리를 찾으려면 -비
옵션을 다음과 같이 locate 명령과 함께 사용하십시오.
locate -b '\ mydata'
위의 명령에서 백 슬래시는 globbing 문자로, 특정 파일 이름이 아닌 와일드 카드 문자를 특정 파일 이름 세트로 확장하는 방법을 제공합니다. 와일드 카드는 표현식이 평가 될 때 하나 이상의 문자로 대체 될 수있는 기호입니다. 가장 일반적인 와일드 카드 기호는 물음표 ( ?
), 하나의 문자를 나타내며 별표 ( *
)는 인접한 문자열을 나타냅니다. 위의 예에서 백 슬래시는 "mydata"를 "* mydata *"로 암시 적으로 바꾸지 못하도록하므로 "mydata"가 포함 된 결과로 끝납니다.
mlocate 명령은 locate의 새로운 구현입니다. 전체 파일 시스템을 인덱싱하지만 검색 결과에는 현재 사용자가 액세스 할 수있는 파일 만 포함됩니다. mlocate 데이터베이스를 업데이트하면 타임 스탬프 정보가 데이터베이스에 보관됩니다. 이것은 디렉토리의 내용이 내용을 다시 읽지 않고 변경되었는지를 mlocate가 알 수있게하고 데이터베이스를 하드 드라이브에서 더 빠르고 덜 업데이트하도록합니다.
mlocate를 설치하면 / usr / bin / locate 바이너리 파일이 mlocate를 가리 키도록 변경됩니다. mlocate를 설치하려면 Linux 배포판에 아직 포함되어 있지 않은 경우 프롬프트에서 다음 명령을 입력하십시오..
sudo apt-get install mlocate
참고 :이 문서의 뒷부분에 나오는 명령을 사용하면 명령 실행 파일의 위치를 확인할 수 있습니다 (있는 경우)..
mlocate 명령은 표준 locate 명령과 동일한 데이터베이스 파일을 사용하지 않습니다. 따라서 프롬프트에서 다음 명령을 입력하여 데이터베이스를 수동으로 만들 수 있습니다.
sudo /etc/cron.daily/mlocate
데이터베이스가 수동으로 생성되거나 스크립트가 cron에서 실행될 때까지 mlocate 명령이 작동하지 않습니다..
locate 또는 mlocate 명령에 대한 자세한 내용을 보려면 다음을 입력하십시오. 사람 찾기
또는 남자 대학생
터미널 창에서 Enter 키를 누릅니다. 두 명령 모두에 대해 동일한 도움말 화면이 표시됩니다..
어떤 명령 사용
"which"명령은 명령이 _ 행될 때 호출되는 실행 파일의 절대 경로를 리턴합니다. 이 기능은 바탕 화면, 패널 또는 바탕 화면 관리자의 다른 위치에서 프로그램의 바로 가기를 만들기위한 실행 파일의 위치를 찾는 데 유용합니다. 예를 들어, 명령을 입력하십시오. 어느 파이어 폭스
아래 이미지에 표시된 결과를 표시합니다..
기본적으로 which 명령은 일치하는 첫 번째 실행 파일 만 표시합니다. 일치하는 모든 실행 파일을 표시하려면 -에이
옵션을 사용하십시오.
어느 쪽?
다음 그림과 같이 한 번에 여러 실행 파일을 검색 할 수 있습니다. 발견 된 실행 파일에 대한 경로 만 표시됩니다. 아래 예제에서는 "ps"실행 파일 만 발견되었습니다..
참고 : which 명령은 현재 사용자의 PATH 변수 만 검색합니다. 루트 사용자 만 일반 사용자로 사용할 수있는 실행 파일을 검색하면 아무 결과도 표시되지 않습니다.
which 명령에 대한 자세한 내용을 보려면 터미널 창에서 명령 프롬프트에 "man which"(따옴표 제외)를 입력하고 Enter 키를 누릅니다..
Whereis 명령 사용
whereis 명령은 명령에 대한 바이너리, 소스 및 매뉴얼 페이지 파일의 위치를 확인하는 데 사용됩니다. 예를 들어, 타이핑 whereis 파이어 폭스
프롬프트에 다음 이미지와 같은 결과가 표시됩니다.
실행 파일 경로 만 표시하고 원본 및 수동 페이지의 경로는 표시하지 않으려면 -비
선택권. 예를 들어, 명령 whereis -b 파이어 폭스
만 표시됩니다. / usr / bin / firefox
결과로서. 이는 해당 프로그램의 소스 및 맨 페이지를 검색하는 것보다 프로그램 실행 파일을 더 자주 검색하기 때문에 편리합니다. 원본 파일 만 검색 할 수도 있습니다 ( -에스
) 또는 맨 페이지 ( -엠
).
whereis 명령에 대한 자세한 내용을 보려면 다음을 입력하십시오. 남자 whereis
터미널 창에서 Enter 키를 누릅니다..
Whereis 명령과 어떤 명령의 차이점 이해
whereis 명령은 명령의 바이너리, 소스 및 맨 페이지 위치를 보여 주지만, which 명령은 명령의 바이너리 위치 만 보여줍니다.
whereis 명령은 현재 디렉토리의 PATH 환경 변수에 나열된 디렉토리를 검색하는 반면 binary, source 및 man 파일의 특정 디렉토리 목록을 검색합니다. whereis 명령의 경우 특정 디렉토리 목록은 명령의 맨 페이지의 FILES 절에서 찾을 수 있습니다.
기본적으로 표시되는 결과에 관해서, whereis 명령은 찾은 모든 것을 표시하지만 어떤 명령은 찾은 첫 번째 실행 파일 만 표시합니다. 당신은 그것을 사용하여 변경할 수 있습니다 -에이
옵션, 앞에서 설명한 명령에 대해.
whereis 명령은 명령에 하드 코딩 된 경로 만 사용하므로 찾고자하는 것이 항상있는 것은 아닙니다. whereis 명령에 대한 매뉴얼 페이지에없는 디렉토리에 설치 될 것으로 생각되는 프로그램을 검색하는 경우 which 명령과 함께 which 명령을 사용할 수 있습니다. -에이
옵션을 사용하여 시스템 전체에서 명령의 모든 항목을 찾습니다..