bash 명령의 점은 무엇을 의미합니까? 별표와 어떻게 다른가요?

bash 명령의 점은 무엇을 의미합니까? 별표와 어떻게 다른가요?

나는 bash에서 중간점의 중요성과 별표와 어떻게 다른지 이해하려고 노력하고 있습니다. 누군가 이것에 대해 자세히 설명해 주시겠습니까? 예를 들어, cp -ar /foo/. /foo2/다음과 같은 차이점이 무엇입니까?cp -pr /foo/* /foo2/

답변1

점( .)은 .디렉토리 내의 디렉토리일 뿐이며 디렉토리 자체와 동일합니다( ls -la /foo표시됩니다). 따라서 다른 곳에서 복사하면 자체 복사 없이 foo/.아래의 모든 트리를 효과적으로 복사하게 됩니다 ( 와 동일한 위치 에 복사 ).foofoofoo2/.foo2

/foo/*의 숨겨지지 않은 파일 및 디렉토리 목록은 쉘에 의해 확장되므로 dotfiles/dotdirs를 제외하고 /foo동일한 디렉토리 구조도 /foo에 복사됩니다. /foo2실제로, cp(잠재적으로) 많은 주장이 접수될 것입니다. 목록이 너무 크면 실행이 cp실패할 수도 있습니다.

관련 정보