답변:
이 명명 규칙은 "숨겨진"파일 또는 디렉토리를 의미하는 Unix와 유사한 운영 체제 (예 : Linux 또는 OS X)에서 제공됩니다. 어디에서든 작동하지만, 그 차 를 사용하여 홈 디렉토리에 숨기기 구성 파일 (예 : ~/.cache/
나 ~/.plan
- 그들은 자주 "dotfiles"라고하고 있습니다).
어떤 방식 으로든 도트 파일은 Windows의 "AppData"디렉토리에 해당하는 전통적인 Unix라고 할 수 있습니다. (대부분의 리눅스 프로그램은 따라 변경되는 XDG 기본 디렉토리 사양을 자신의 구성을 이동 ~/.config/
및 다른 데이터 ~/.cache/
및 ~/.local/share/
-이가 좀 더 유사하게 AppData\Roaming
하고 AppData\Local
.)
POSIX가 아닌 Windows 시스템 API를 사용하도록 포팅되었지만 일부 다른 Windows 규칙에 맞게 조정되지 않은 일부 프로그램 (특히 OpenSSH 및 Subversion)을 사용했기 때문에 Windows에 이러한 디렉토리 .ssh
와 .subversion
디렉토리 가 있습니다.
때때로 Windows 시스템에서 Cygwin과 같은 Unix와 유사한 환경을 사용하는 사람들이 더 쉽게 생활 할 수 있도록이 적응을 의도적으로 건너 뜁니다. 예를 들어 Cygwin ls
은 Windows "hidden"플래그를 무시하고 .dotfile
이름 만 사용하는 유닉스와 같은 표준 도구 세트를 설치합니다 . 또한 같은 위치 (예 :)를 사용하면 <home>/.ssh
Windows와 Linux / BSD / OSX 컴퓨터간에 구성을보다 쉽게 동기화 할 수 있습니다.
또한 : 일반적으로 이러한 파일은 사용자의 홈 디렉토리 (예 : Linux 또는 Windows 7+)에 있습니다. "문서"또는 "내 문서"하위 디렉토리에 넣는 것은 매우 드 rare니다./home/name/.ssh
C:\Users\name\.ssh
Rob Pike 가 Google+에 글을 쓸 때 우연한 기능이었습니다.
유닉스 파일 시스템의 설계, 항목을 작업중인되면서 오래 전,
.
그리고..
출연, 네비게이션 쉽게 확인합니다. 확실하지는 않지만..
파일 시스템이 계층 구조가되었을 때 버전 2를 다시 쓰는 동안 들어갔다고 생각 합니다 (초기 구조가 매우 다름). 그러나 ls를 입력하면 이러한 파일이 나타 났으므로 Ken 또는 Dennis가 간단한 테스트를 프로그램에 추가했습니다. 그때는 어셈블러에 있었지만 문제의 코드는 다음과 같습니다.
if (name[0] == '.') continue;
이 문장은 원래의 것보다 약간 짧았습니다.
if (strcmp(name, ".") == 0 || strcmp(name, "..") == 0) continue;
그러나, 그것은 쉬웠다.
두 가지 결과가 발생했습니다.
먼저, 선례가 잘못되었습니다. 다른 게으른 프로그래머들도 같은 단순화를 통해 버그를 도입했습니다. 마침표로 시작하는 실제 파일은 계산해야 할 때 종종 건너 뜁니다.
둘째, "숨겨진"또는 "도트"파일이라는 개념이 만들어졌습니다. 결과적으로 더 게으른 프로그래머는 파일을 모든 사람의 홈 디렉토리에 놓기 시작했습니다. 나는 이것을 입력하는 데 사용하는 머신에 많은 것을 설치하지는 않았지만 홈 디렉토리에는 약 100 개의 도트 파일이 있으며 대부분의 파일이 무엇인지 또는 여전히 필요한지조차 모른다 . 이 누적 된 슬러지로 인해 내 홈 디렉토리를 통과하는 모든 파일 이름 평가가 느려집니다.
ls
에는 -a
모든 파일을 나열 하는 옵션이 있습니다.
..
에는 "up dir"을 포함하여 계층 적 파일 시스템과 일부 유닉스 규칙이 추가되었습니다 . Microsoft는 실제로 이러한 "고급 유닉스 기능"을 광고했습니다.