본문 바로가기

Programming

Windows Console 에서 rm -rf 구현

DEL /F /Q /S  <targetdir>

아쉽게도 Windows XP에서만 가능하다고 한다

그래도 이게 어디!!!

------------------------------------------------------------------------

<출처 : http://www.ss64.com/nt/del.html>

DEL

Delete one or more files.

Syntax
      DEL [options] [/A:file_attributes] files_to_delete

Key files_to_delete : This may be a filename, a list of files or a Wildcard

options /P Give a Yes/No Prompt before deleting. /F Ignore read-only setting and delete anyway (FORCE) /S Delete from all Subfolders (DELTREE) /Q Quiet mode, do not give a Yes/No Prompt before deleting. /A Select files to delete based on file_attributes
file_attributes: R Read-only -R NOT Read-only S System -S NOT System H Hidden -H NOT Hidden A Archive -A NOT Archive

Wildcards: These can be combined with part of a filename

* Match any characters
? Match any ONE character

Examples:

To delete HelloWorld.TXT
DEL HelloWorld.TXT

To delete "Hello Big World.TXT"
DEL "Hello Big World.TXT"

To delete all files that start with the letter A
DEL A*

To delete all files that end with the letter A
DEL *A.*

To delete all files with a .DOC extension
DEL *.DOC

To delete all read only files
DEL /a:R *

To delete all files including any that are read only
DEL /F *

Folders
If a folder name is given instead of a file, all files in the folder will be deleted, but the folder itself will not be removed.

Temporary Files
You should clear out TEMP files on a regular basis - this is best done at startup when no applications are running. To delete all files in all subfolders of C:\temp\ but leave the folder structure intact:

   DEL /F /S /Q %TEMP%

When clearing out the TEMP directory it is not generally worthwhile removing the subfolders too - they don't use much space and constantly deleting and recreating them can potentially increase fragmentation within the Master File Table.

Deleting a file will not prevent third party utilities from un-deleting it again, however you can turn any file into a zero-byte file to destroy the file allocation chain like this:

TYPE nul > C:\examples\MyFile.txt
DEL C:\examples\MyFile.txt

Undeletable Files

Files are sometimes created with the very long filenames or reserved names: CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN, NUL
To delete these use the syntax: DEL \\.\C:\somedir\LPT1
Alternatively SUBST a drive letter to the folder containing the file.

If a file (or folder) still appears to be 'undeletable' this is often caused by the indexing service.
Right click the file you need to delete, choose properties, advanced and untick "allow indexing" you will then be able to delete the file.
To cure the problem permanently - Control Panel, Add/Remove programs, Win Accessories, indexing service.

Delete Locked files (Typically IE temp files or the Offline cache)
This works on any version of NT, 2000 or XP

Close all applications
Open a command prompt
Click Start, and then Shut Down
Simultaneously press CTRL+SHIFT+ALT.
While you keep these keys pressed, click Cancel in the Shut Down Windows dialog box.
In the command prompt window, navigate to the cache location, and delete all files from the folder (DEL /s)
At the command prompt, type explorer, and then press ENTER.

DELTREE

Previous versions of Windows had the DELTREE command that deletes all files and sub folders.
DEL /s will delete all files
RD /s will remove all files and folders including the root folder.

:: Remove all files and subfolders but NOT the root folder
:: From tip 617 at JsiFAQ.com
@echo off
pushd %1
del /q *.* 
for /f "Tokens=*" %%G in ('dir /B') do rd /s /q "%%G"
popd 

Normally DEL will display a list of the files deleted, if Command Extensions are disabled; it will instead display a list of any files it cannot find.

ERASE is a synonym for DEL

"It devoured my paper, it was a really good paper" - Ellen Feiss

Related:

DELPROF
Delete NT user profiles
Delrp - Delete a file/directory and NTFS reparse points.(Win 2K ResKit)
RD - Delete folders or entire folder trees ()
CleanMgr - Automated cleanup of Temp files, Internet files, downloaded files, recycle bin
FORFILES - Delete files older than X days
INUSE - updated file replacement utility (may not preserve file permissions)
Q120716 - Delete in-use files with rm
Q315226 - Remove Files with Reserved Names
Q320081 - Cannot delete a file or folder
Q159199 - A file cannot be deleted (NTFS)
PowerShell: Remove-Item - Delete the specified items.
Equivalent bash command (Linux): rmdir / rm - Remove folders/ files

'Programming' 카테고리의 다른 글

인터넷에 연결된 사설 IP 주소 찾기  (0) 2009.06.12
컴퓨터의 모든 IP 주소 가져오기  (0) 2009.06.12
Tail 함수 구현  (2) 2009.05.26
쓰레드 동기화 방법론  (0) 2009.04.30
현재 IP Address 값 구하기  (0) 2009.04.27