
작업 디렉토리가 있다고 가정해 보겠습니다.
/home/userID/workingDirectory
mv
현재 작업 디렉터리의 상위 디렉터리와 작업 디렉터리 자체에 영향을 주는 명령을 입력합니다 .
mv .* /tmp/someDirectory
이 명령을 실행하면 두 디렉터리의 내용이 현재 디렉터리의 링크와 일치하므로 /home/userID
이동 합니다 ./home/userID/workingDirectory
.*
..
여태까지는 그런대로 잘됐다.
그러나 내가 이해하지 못하는 것은 파일과 디렉토리가 매개변수의 상위 항목으로 이동되는 이유입니다.
이 파일은 /tmp
대신 내부에 나타납니다./tmp/someDirectory
누구든지 단서를 제공할 수 있나요?
운영 체제는 솔라리스입니다.
감사해요
답변1
기본적으로 시스템은 사용될 때 다음과 같은 작업을 수행하기 때문입니다 .*
.
renameat(AT_FDCWD, "../workingDirectory", AT_FDCWD, "/tmp/narf/../workingDirectory") Err#18 EXDEV
그래서 /tmp/narf 대신 /tmp/workingDirectory로 이동했습니다.