중요한 디렉토리에 대한 심볼릭 링크가 있습니다. 디렉토리는 그대로 유지하면서 심볼릭 링크를 제거하고 싶습니다.
rm을 시도했지만
rm: 'foo'를 제거할 수 없습니다가 반환됩니다. rmdir
을 시도했지만 rmdir: 'foo'를 제거하지 못했습니다
가 반환되었습니다: 디렉터리가 비어 있지 않습니다 그런 다음
rm -f,
rm -rf및
sudo rm -rf`를 진행했습니다.
그런 다음 백업을 찾으러갔습니다.
목욕물과 함께 아기를 버리지 않고 심볼 링크를 제거 할 수있는 방법이 있습니까?
# this works
rm foo
# versus
rm foo/
기본적으로 디렉터리를 삭제하는 것이 아니라 파일을 삭제하도록 지시해야 합니다. 저는 rm
과 rmdir
의 차이가 존재하는 것은 C 라이브러리가 각각을 처리하는 방식에 차이가 있기 때문이라고 생각합니다.
어쨌든 첫 번째는 작동하고 두 번째는 foo가 디렉토리라는 것에 대해 불평해야 합니다.
위와 같이 작동하지 않으면 권한을 확인하십시오. 파일을 제거하려면 포함된 디렉터리에 대한 쓰기 권한이 필요합니다.
링크 해제 명령을 사용하고 끝에 /가 없는지 확인합니다.
$ unlink mySymLink
언링크()는 파일 시스템에서 이름을 삭제합니다. **해당 이름이 파일에 대한 마지막 링크이고 파일을 열어둔 프로세스가 없는 경우 파일이 삭제되고 사용 중이던 공간을 재사용할 수 있게 됩니다. 해당 이름이 파일에 대한 마지막 링크이지만 파일을 열어둔 프로세스가 있는 경우 해당 파일을 참조하는 마지막 파일 설명자가 닫힐 때까지 파일이 계속 존재합니다.
제가 올바르게 읽었다면 문제가 될 수 있다고 생각합니다.
이름이 심볼릭 링크를 참조하는 경우 링크가 제거됩니다.
이름이 소켓, 파이포 또는 장치를 참조하는 경우 해당 이름은 제거되지만 해당 개체가 열려있는 프로세스는 계속 사용할 수 있습니다.
rm 제거하도록 심볼릭 링크.
skrall@skrall-desktop:~$ mkdir bar
skrall@skrall-desktop:~$ ln -s bar foo
skrall@skrall-desktop:~$ ls -l foo
lrwxrwxrwx 1 skrall skrall 3 2008-10-16 16:22 foo -> bar
skrall@skrall-desktop:~$ rm foo
skrall@skrall-desktop:~$ ls -l foo
ls: cannot access foo: No such file or directory
skrall@skrall-desktop:~$ ls -l bar
total 0
skrall@skrall-desktop:~$
내가 만약 이 문제가 MinGW (실제로는 Git Bash) 에서 실행되는 Windows Server. 위의 방법을 사용할 수 없는 것 같다. 결국 한 복제본이므로 한 다음 항목을 삭제할 경우 소프트 https://partner. Windows 탐색기에서 디렉터리입니다 삭제한 다음 휴지통에. 그러나 이 같은 의지를 브라운아저씨의 전송되었기 didn& # 39, 파일을 삭제할 수 없다. 표시되어도 못하며창조된 백업 만들기!