실수로 디렉토리를 "..."로 옮겼습니다. 어디로 갔나요?

실수로 디렉토리를 "..."로 옮겼습니다. 어디로 갔나요?

Linux에서 폴더 이름을 바꾸는 동안 실수로 디렉터리 이름 뒤에 슬래시를 남겼습니다.

mv /images/images/ ..

이제 폴더는 사라졌지만 사용된 공간으로 인해 여전히 거기에 있다는 것을 알고 있습니다. 이름이 ".."로 변경된 줄 알았는데 다시 이름을 바꿀 수 없는 것 같나요? 답을 아는 사람이 있나요? :)

답변1

mv /images/images/ ..images디렉토리 내에서 호출된 디렉토리를 /images해당 디렉토리의 상위 디렉토리로 이동합니다.현재 디렉터리.

이것현재 디렉터리명령을 실행한 디렉토리입니다 mv. 귀하의 카탈로그는 "사라지지" 않습니다. mv명령을 실행할 때 현재 위치를 파악하고 거기에서 부모를 찾으면 됩니다 .

디렉터리인 경우(또는 디렉터리였다면) PS mv /images/images ..(후행 없음 /)는 정확히 동일한 작업을 수행합니다. /images/images슬래시를 추가하면 동작에서 볼 수 있는 유일한 차이점은 mv결과가 디렉터리가 아닌 파일인 경우 명령이 강제로 실패한다는 것입니다./images/images

답변2

..상위 디렉터리를 나타냅니다. 당신이 home/user/TEST폴더 에 있고 거기에 디렉터리가 있다고 가정해 보겠습니다 images1/images2. 그러면 이제 하위 디렉토리 없이 에 images2폴더가 있고 에 home/user/폴더 images1가 있습니다 .TESTimages2

~$ mkdir TEST
~$ cd TEST
~/TEST$ mkdir -p images1/images2
~/TEST$ touch images1/images2/a_file
~/TEST$ mv images1/images2/ ..
fti@erebe:~/TEST$ ls images1
fti@erebe:~/TEST$ ls ..
images2  TEST
fti@erebe:~/TEST$ ls ../images2/
a_file

에 첫 번째 슬래시가 표시되지 않습니다 /images/images.
현재 루트 폴더( )에 있고 /루트 폴더에는 상위 디렉터리가 없으므로 /..( )로 이동하는 것과 같습니다. 즉, 의 파일은 이제 에 위치해야 합니다.//images/images/../images/images/images/foo.txt/images/foo.txt

관련 정보