다음과 같은 명령을 사용하여 서버에 쿼리합니다.
find ./ -type f -name 'filename"
다음으로 시작하는 파일이 많습니다.
.//library
또는
.//user
이것들은 무엇을 의미합니까?
답변1
이것은 별로 의미가 없습니다. 당신이 제공한 패턴은 다음 find
과 같습니다../
, find
그 결과를 해당 경로에 쉽게 붙여넣을 수 있습니다. 다음을 제외하면 이중 슬래시는 무시됩니다(단일 슬래시로 처리).선두일부 시스템에서는 이중 슬래시가 의미가 있을 수 있습니다. 게다가 이식 가능한 프로그램은 이러한 동작을 채택합니다.
그러나 이 특별한 동작은 이전 버전(예: OSX)이 있는 find
BSD 파생 시스템에서만 볼 수 있습니다. NetBSD는 소스 코드에서 이 문제를 해결하려고 시도합니다.2005년; OSX 사용자 공간은나이가 많은.
"최근" FreeBSD, NetBSD 및 OpenBSD를 확인하면 이 동작이 발생하지 않습니다. Linux 및 Unix(AIX, HPUX, Solaris)도 지원되지 않습니다.
추가 자료:
- Mac 터미널 찾기 명령: 결과 출력의 이중 슬래시는 무엇을 의미합니까?
찾기 - 파일 찾기(POSIX)
이것
find
유틸리티는 path로 지정된 각 파일에서 디렉토리 계층 구조를 반복적으로 내려와서 발견된 각 파일의 피연산자 섹션에 설명된 기본 색상으로 구성된 부울 표현식을 평가해야 합니다. 각 경로 피연산자를 평가해야 합니다.변함없는모든 후행을 포함하여 제공된 대로<slash>
문자, 계층 구조에서 발견되는 다른 파일에 대한 모든 경로 이름은 현재 경로 피연산자의 연결로 구성됩니다.<slash>
현재 경로 피연산자가 1로 끝나지 않으면 파일 이름은 경로 피연산자를 기준으로 합니다. 관련 부분에는 점 또는 점-점 구성 요소가 포함되어서는 안 되며, 후행 부분도 포함되어서는 안 됩니다.<slash>
문자이며 경로 이름 구성 요소 사이에는 단일 문자만 있습니다.
답변2
.//
현재 디렉터리를 나타내 므로 .//user
출력에서 user
현재 작업 디렉터리의 파일을 나타냅니다.
double 은 //
Single 로 해석되어야 합니다 /
. 이는 제가 사용한 모든 시스템에 해당됩니다. 물론 POSIX는 이 동작 ///
(또는 그 이상) 만 정의합니다 /
.
일반적인 //
. 이는 상대 경로의 경우 이런 방식으로 경로를 추가하는 동작입니다. 이 특정 동작은 시스템의 하위 집합에서만 널리 퍼져 있습니다.find
./
.
find
find
이 답변언급했듯이 당신도 그들 중 하나임에 틀림없습니다.
답변3
.//
동일합니까?./
첫 번째 슬래시 이후 연속되는 슬래시는 의미상 의미가 없습니다.