파일 이름 에 특수 문자 [.\] 가 들 어 있 는 파일 을 삭제 하 는 방법

3874 단어
하면, 만약, 만약... '/',이 문제 의 끝으로 넘 어가 세 요.하면, 만약, 만약... 
한 개 ' 또는 문자 나 중문 자 를 제어 할 수 있 습 니 다. 계속 읽 으 세 요. 
전형 적 인 해법 은: 
rm -i some*pattern*that*matches*only*the*file*you*want 
이러 면 rm 당신 이 준 조건 에 맞 는 파일 을 삭제 하기 전에 확인 하 십시오. 
너 와 같다 shell 각 글자 의 여덟 번 째 를 bit 0 이 되면 중국어 로 파일 을 만든다. 
이름 의 파일 은 삭제 할 수 없 을 것 같 습 니 다! 
... 과 
        rm -ri . 
이러 하 다 rm 현재 디 렉 터 리 에 있 는 모든 파일 을 삭제 하고 파일 을 삭제 합 니 다. 
이 파일 을 삭제 하 시 겠 습 니까?그러나 불행 하 게 도 모든 버 전이 아니다. rm 도. 
이렇게 쓸 수 있어.게다가 사용 할 수 있다 면 현재 있 는 디 렉 터 리 를 
하위 디 렉 터 리 를 모두 찾 아 넣 으 면 쓸 수 있 습 니 다. "chmod a-x" 하위 디 렉 터 리 를 찾 을 수 없 도록 합 니 다. 
무 서운 결 과 를 피 할 수 있다.하 다 "rm -r" 유 니 버 설 "rm" 먼저 깊이 
숨 을 쉬 고 자신 이 무엇 을 하고 있 는 지 알 아 라! 
... 과 
        find . -type f ... -ok rm '{}' \; 
"..." 예 를 들 어 질문 이 있 는 파일 을 찾 는 것 과 같은 파일 이름 을 식별 하 는 서술 어 이다. 
inode 왜 
        find . -num 12345 -ok rm '{}' \; 
혹시 
        find . -inum 12345 -ok mv '{}' new-file-name \; 
삭제 또는 개명. 옵션 "-ok" 알리다 find 명령 을 실행 하기 전에 확인 을 요청 하 겠 습 니 다. 
.만약 당신 이 내 린 명령 에 문제 가 없다 는 것 을 확인 할 수 있다 면, 파일 을 처리 하 는 데 이상 한 글자 가 있 을 까 봐 두 렵 습 니 다. 
원 을 찍 으 면 스크린 을 엉망 으로 만 들 수 있 으 니 선택 하 세 요. "-exec" 먼저 요구 하지 않 았 을 거 야. 
인정 
파일 이름 에 들 어 있 을 때 '/' 어떻게 할 까요? 
이런 종류의 파일 은 매우 특별한 상황 이 며, 또한 단지 kernel 의 bug 발생 하 다 
쓰다 NFS 원 격 기기 에서 온 파일 이름 에 규정 에 맞지 않 는 
거 르 기우리 가 첫 번 째 로 해 야 할 일 은 바로...............................................................nbsp;
문 제 는 이렇게 이상 할 것 이다. 
UNIX 디 렉 터 리 는 사실 단순 한 파일 이름과 inode number  쌍 을 이루다. 
예 를 들 어 목록 에는 다음 과 같은 정보 가 포함 되 어 있다. 
        filename  inode 
        file1     12345 
        file2.c   12349 
        file3     12347 
이론 적 으로nbsp;'/' 화해시키다 '\0' 두 글 자 는 파일 이름 에 사용 할 수 없습니다. 
다음 과 같은 특수 용도 가 있 기 때문이다. 
        '/'     :디 렉 터 리 이름과 파일 이름 을 구분 하 는 데 사용 합 니 다. 
        '\0'    :파일 이름 의 끝 문자 입 니 다. 
매우 극단 적 이 고 불행 하 게 도 일부 업 체 가 만 든 것 이다. NFS 원 격 기계 의 요구 에 응답 하고 있 습 니 다. 
구 할 때 바보 같이 사선 (/) 이 함 유 된 파일 이름 을 만든다.예컨대 Mac 
기타 Unix 기계 가 투과 하 다 NFS 날짜 이름 의 파일 을 만 듭 니 다. 
Unix 맞다그럼 Unix 디 렉 터 리 가 이렇게 보일 수도 있 습 니 다: 
        filename  inode 
        91/02/07  12357 
저희 가 앞에서 말씀 드 렸 던... 'find' 혹시 'rm' 이 파일 을 삭제 할 수 없습니다. 
기타 Unix 프로그램 은 모두 강제 적 으로 '/' 앞에서 말 한 구분자 로 해석 하 다. 
사실 어떤 일반적인 프로그램 도 시도 해 본다. unlink ("91/02/07") 
kernel 그 의 미 는? "unlink 목차 91 하위 디 렉 터 리 02 중급 
책상. 07 "그러나 우 리 는 이런 파일 이 없습니다. 우 리 는 이름 이 있 습 니 다. 
"91/02/07" 현재 디 렉 터 리 에 있 습 니 다.이것 은 매우 미세 하지만 매우 중요 한 차이 이다. 
이 럴 때 어 떡 하지?일단 이런 지저분 한 이름 이 생 긴... 맥, 해 봐. 
보다 NFS daemon 없 는 걸 로 바 꿔 줄 까? '/' 라 는 파일 명 을 붙 였 다.하면, 만약, 만약... 
시스템 관리자 에 게 도움 을 청 했 습 니 다.그 에 게 다음 과 같은 몇 가지 방법 중 하 나 를 시험 해 보라 고 하 세 요. 
1. 쓰다 "ls -i" 파일 의 를 찾아낸다 inode number,umount 이것 괜찮아요? 
   file system 그리고 "clri" 이것 괜찮아요? inode 제거 
   기도 "fsck" 이 방법 은 이 난잡 한 파일 이름 을 삭제 할 것 입 니 다. 
   서류 
2. 이 파일 의 자 료 를 저장 하고 싶다 면 다음 과 같은 방법 을 시도 해 보 세 요. 
   -그 난잡 한 파일 이름 의 파일 이 있 는 목록 의 친 목록 아래 에 만 들 었 다. 
    하위 디 렉 터 리, 오래된 디 렉 터 리 에서 옮 길 수 있 는 파일 을 모두 새 디 렉 터 리 로 옮 깁 니 다. 
    안. 
   -이로써 "ls -id" 오래된 디 렉 터 리 를 가 져 온 inode number 
   -unmount 이것 괜찮아요? file system, 쓰다 "clri" 그 거 치 워. 
    디 렉 터 리 inode 
   -"fsck" 저것, 그것 file system 
   -다시 mount 저것 file system 
   -새 디 렉 터 리 를 오래된 디 렉 터 리 이름 으로 변경 합 니 다. 
   -... 에서 lost+found 다음 에 그 서 류 를 찾 아서 이름 을 바 꾸 어 원래 의 것 으로 돌려 놓 아 라. 
    온 목록.
 
  

cmd :md jb51..\
           :rd jb51..\

좋은 웹페이지 즐겨찾기