이름에 `가 포함된 파일 제거

이름에 `가 포함된 파일 제거

어느 시점에서 나는 `가 포함된 파일을 만들었습니다. 어떻게 제거하나요?

ls -la보고:

-rw-rw-r--  1 ec2-user ec2-user     0 Sep 25 23:01 `which

답변1

여러 가지 방법이 있습니다:

  1. 파일명을 인용해 보세요

    rm '`which'
    
  2. 공격적인 캐릭터를 탈출하세요

    rm \`which
    
  3. 쉘 글로빙 사용(일치하는 다른 파일이 있는 경우 메시지 표시)

    rm -i ?which
    rm -i *which
    
  4. 대신 사용하세요 find(@Braiam이 아래에서 지적한 것처럼 이 방법은 현재 디렉터리에서 일치하는 모든 파일을 찾아 예상보다 더 많은 파일을 삭제할 수 있습니다.)

    find . -name '`which' -exec rm {} \;
    find . -name '`which' -delete
    

답변2

파일 이름에 '재미있는 문자'가 있고 이를 입력할 수 없는 경우 다음을 수행할 수 있습니다.

rm -i *which*

which일반 문자로 구성된 부분은 어디에 있습니까?

(대화형의 경우 -i) 일치하는 파일 이름을 제거하기 전에 메시지가 표시되는지 확인하여 삭제하고 싶지 않은 일치 항목을 모두 건너뛸 수 있습니다.

답변3

백슬래시를 사용하여 문제가 되는 문자를 이스케이프하여 제거할 수 있습니다. 당신은 입력할 수 있습니다

rm \`which

그러면 그게 효과가 있을 거예요.

답변4

그런 일이 일어납니다. 파일 이름이 다음과 같은 경우

`which 

당신은 사용해야합니다

mv '`which' which

'파일 이름 앞에 특수 문자가 있으므로 파일 이름 주위에 이를 사용해야 합니다 .

관련 정보