본문 바로가기
윈도우 오류

윈도우에서 파일 삭제 및 이름 변경 시 "잘못된 파일 핸들입니다" 오류 해결 방법

by 젤리아드 2023. 8. 10.
반응형

CON.cif라는 이름을 가진 파일을 삭제하려고 하는데 다음 오류가 발생했습니다.

중단된 작업 - 1개
잘못된 파일 핸들입니다.
CON.cif
취소 버튼 누르기
잘못된 파일 핸들입니다 오류

이 오류가 나오면 일단 취소 버튼을 눌러서 창을 닫습니다.

해당 오류는 윈도우에서 사용하는 예약어를 파일 이름으로 사용했기 때문에 나오는 오류입니다.

 

윈도우에서 사용하는 예약어

AUX, CON, NUL, PRN
COM1~COM9
LPT1~LPT9

 

CON.cif 파일의 이름은 위 예약어 목록에 포함되어 있으므로 윈도우 환경에서는 삭제 및 이름 변경할 수 없습니다.

이러한 예약어 이름의 파일은 관리자 cmd 및 PowerShell에서도 삭제되지 않습니다.

원칙적으로는 그러합니다.

하지만 이러한 원칙을 깨고 파일을 삭제하는 방법에 대해 알아보겠습니다.

 

먼저 cygwin이라는 프로그램이 설치되어 있어야 합니다.

아주 유명한 프로그램이므로 cygwin이 없으면 아래 공식 사이트에서 다운로드합니다.

윈도우 환경에서 유닉스 체험을 할 수 있는 프로그램인데 깊게 알 필요는 없습니다.

https://www.cygwin.com/

 

Cygwin

Cygwin Get that Linux feeling - on Windows This is the home of the Cygwin project What... ...is it? Cygwin is: a large collection of GNU and Open Source tools which provide functionality similar to a Linux distribution on Windows. a DLL (cygwin1.dll) which

www.cygwin.com

 

사이트에서 setup-x86_64.exe를 찾아 다운로드합니다.

Installing Cygwin
Install Cygwin by running setup-x86 64.exe
cygwin 다운로드

다운로드가 완료되면 setup-x86_64.exe 파일을 실행합니다.

 

만약 아래와 같은 메시지가 나온다면 실행 버튼을 누릅니다.

파일 열기 - 보안 경고
게시자를 확인하지 못했습니다. 그래도 이 소프트웨어를 실행하시겠습니까?
이름: setup-x86_64.exe
실행 버튼 클릭
게시자 미확인 메시지
Cygwin 설치 초기 화면
Cygwin Setup
Cygwin Net Release Setup Program
다음 버튼 클릭
cygwin 설치

cygwin 설치 초기 화면에서 다음 버튼을 누릅니다.

Cygwin Setup - Choose Installation Type
Choose A Download Source
Install from Internet 옵션 선택
다음 버튼 클릭
cygwin 다운로드 소스 선택

Install from Internet 옵션을 선택하고 다음 버튼을 누릅니다.

 

Cygwin Setup - Choose Installation Directory
Select Root Install Directory
cygwin을 설치할 폴더를 Root Directory에 설정하고 다음 버튼 클릭
cygwin 설치 폴더 설정

cygwin을 설치할 폴더를 Root Directory에 설정합니다.

다른 폴더에 설치하려면 Browse 버튼을 누르고 새로운 경로를 설정합니다.

Install For 옵션은 All Users 나 Just Me 아무거나 선택해도 상관없습니다.

다음 버튼을 누릅니다.

 

Cygwin Setup - Select Local Package Directory
Select a directory where you want Setup to store the installation files it downloads.
The directory will be created if it does not already exist.
다음 버튼 클릭
Cygwin Select Local Package Directory

다음 버튼을 누릅니다.

 

Cygwin Setup - Select Connection Type
Select Your Internet Connection
Use System Proxy Settings 옵션을 선택하고 다음 버튼 클릭
Cygwin Connection Type

Use System Proxy Settings 옵션을 선택하고 다음 버튼을 누릅니다.

 

Cygwin Setup - Choose Download Site(s)
Choose A Download Site
Cygwin 다운로드 사이트 선택

다운로드 사이트는 목록에서 아무거나 1개만 선택하고 다음 버튼을 누릅니다.

다운로드가 잘 안 되면 설치 프로그램을 닫고 다시 실행해서 다른 사이트를 선택합니다.

 

Cygwin Setup - Select Packages
다음 버튼 클릭
Cygwin 설치 패키지 선택

Cygwin에 설치할 패키지를 선택하는 화면인데 아무것도 건드리지 말고 다음 버튼을 누릅니다.

패키지를 이것저것 추가하면 용량이 엄청나기 때문에 기본만 설치해야 합니다.

 

Cygwin Setup - Review and confirm changes
다음 버튼 클릭
Cygwin Review and confirm changes

다음 버튼을 누르면 설치가 시작됩니다.

 

Cygwin Setup
Progress
Cygwin 설치 중

설치는 그리 오래 걸리지 않습니다. 조금만 기다리면 완료됩니다.

 

Cygwin Setup - Installation Status and Create Icons
Create icon on Desktop 옆 체크 박스에 체크하고 마침 버튼 클릭
Cygwin 설치 마무리

설치가 완료되면 Create icon on Desktop 옆 체크 박스에 체크하고 마침 버튼을 누릅니다.

 

바탕화면에 생성된 Cygwin64 Terminal 아이콘
Cygwin 아이콘

바탕화면에 요렇게 생긴 아이콘이 생기는데 더블 클릭하여 실행합니다.

 

Copying skeletion files.
..중략..
$ 표시와 커서
Cygwin 터미널 실행 화면

Cygwin 터미널이 실행된 모습입니다.

 

cd e:
삭세할 파일이 있는 드라이브로 이동

cd (드라이브 문자):

위 화면과 똑같이 하면 안 되고 삭제할 파일(예시 CON.cif)이 존재하는 드라이브로 이동합니다.

저는 E: 드라이브에 존재하므로 cd e: 라는 명령어를 입력했습니다.

만약 삭제할 파일이 D 드라이브에 존재한다면 cd d: 라고 입력해야 합니다.

 

cd cygwin64/usr/share/avogadro/crystals/zeolites
삭제할 파일이 있는 폴더로 이동

cd (폴더 경로 입력)

위 화면과 똑같이 하면 안 되고 삭제할 파일(예시 CON.cif)이 존재하는 폴더의 경로를 입력합니다.

예시에서는 삭제할 파일인 CON.cif 파일이 존재하는 폴더의 경로는 cygwin64/usr/share/avogadro/crystals/zeolites 입니다.

실제로는 본인 상황에 맞는 경로를 입력해야 합니다.

주의: 폴더 구분자는 / (키보드에 ?와 같이 있는)를 입력해야 합니다.

윈도우에서 자주 쓰는 \(₩) 를 입력하면 안 됩니다.

 

$ ls
파일 목록 보기

삭제할 파일이 존재하는 경로로 이동 후 ls(알파벳 LS) 명령어를 입력하면 파일 목록을 볼 수 있습니다.

 

CON.cif 파일이 존재하는 파일 목록
삭제할 파일 존재 확인

윈도우에서 절대 지워지지 않는 CON.cif 파일의 마지막 모습을 확인합니다.

 

$ rm CON.cif
파일 삭제 명령어

rm (삭제할 파일 이름)

rm 명령어 뒤에 삭제할 파일 이름을 입력합니다.

저는 CON.cif 파일을 삭제할 예정이라 rm CON.cif를 입력했습니다.

본인이 삭제할 파일 이름을 rm 다음에 입력하여 파일을 삭제합니다.

$ rm CON.cif
rm: 쓰기 금지한 일반 파일 'CON.cif'을(를) 제거할까요? y
쓰기 금지 제거 확인

만약 위 화면처럼 쓰기 금지한 파일 제거 여부를 물어보면 y 를 입력합니다.

 

ls 입력
CON.cif 파일이 삭제되어 파일 목록에서 제외된 화면
파일 삭제 확인

ls 명령어를 입력하여 파일 목록을 확인해 보면 CON.cif 파일이 삭제되어 더 이상 목록에 나타나지 않습니다.

파일이 제거되었고 윈도우 파일 탐색기에서도 파일의 존재를 확인할 수 없습니다.

 

$ exit
Cygwin 터미널 종료

임무를 마친 Cygwin은 exit 명령어를 입력하여 종료합니다.

 

 

 

 

반응형

댓글