Windows와 Ubuntu가 모두 특수 문자가 포함된 파일 이름을 인식하지 못하는 이유는 무엇입니까?

Windows와 Ubuntu가 모두 특수 문자가 포함된 파일 이름을 인식하지 못하는 이유는 무엇입니까?

WSL의 bash에서 (연산자를 사용하여) 텍스트 파일에 추가하려고 했습니다 >>. 아쉽게도 저는 초보자라서 파일을 추가하는 대신 'text'를 파일명으로 하여 새 파일을 만들었고 , Windows(GUI)와 Ubuntu( 명령) 모두 해당 파일이 있는 동안에는 파일을 삭제할 수 없는 >>것 같습니다. rm디렉토리(명령을 사용하는 경우에도 표시됨 dir)

  • 윈도우 GUI:

    Windows GUI의 디렉토리

  • Windows 오류 코드:

    윈도우 오류 코드

  • 세게 때리다:

    root@DESKTOP-IA030GJ:/# cd home
    root@DESKTOP-IA030GJ:/home# dir
    English_Class  Finished_Projects  Keeping.txt  Random_Password_Generator_Project  \\n\\n\ -----Changes\   onion_project  pythonwork
    root@DESKTOP-IA030GJ:/home# ls --quoting-style=shell
     English_Class                      '\n\n -----Changes '
     Finished_Projects                   onion_project
     Keeping.txt                         pythonwork
     Random_Password_Generator_Project
    

답변1

원래 (실수로) 데이터를 파이프한 방식 때문에 이 파일 이름에는 특수 문자가 포함되어 있습니다. 그렇기 때문에 우리는 다음 사항을 알아야 합니다.정확한파일 이름을 입력하고 rm명령에서 따옴표로 묶어서 사용하세요.

우리는 귀하의 파일 이름이 정확히 이라는 것을 알고 있습니다 \n\n -----Changes. 그럼 그걸 사용해 봅시다. 이 명령에서 작은따옴표를 제거하지 마십시오. 그렇지 않으면 작동하지 않습니다.

rm '\n\n -----Changes '

그러면 후속 문제 없이 해당 파일이 완전히 제거됩니다.

*Changes*제거 패턴으로 사용하여 파일을 제거 하거나 -i이와 함께 플래그를 추가하여 삭제하려는 파일이 실제로 삭제되고 있는지 확인하기 위해 대화형으로 만들 수도 있습니다.

관련 정보