µµ½º¹èÄ¡ ÆÄÀÏ ¹®Àǵ帳´Ï´Ù.

   Á¶È¸ 322   Ãßõ 0    

도스명령어로 특정 날짜의 파일을 지울 수 있는 배치파일 작성이 가능할까요?

사진과 같이 매일 생성되는 특정날짜에 해당하는 바이너리 파일을 한달에 1번 삭제하고 싶습니다.

예를 들어 저 수많은 바이너리 파일중에서 특정 월을 지정해서 그 특정 월에 해당하는 바이너리 파일을 지우고 싶습니다. 단 폴더는 삭제되면 안됩니다.

참고로 저 바이너리 파일은 홈페이지 게시판에 게시글에 첨부된 zip압축파일입니다.


첨부된 압축파일 용량이 상당해서 스케쥴러에 등록해서 사용하면 좋겠다는 생각에 질문 올려봅니다.


감사합니다.  

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
ocarina 11-02
https://gnsnow.tistory.com/109

±Ùµ¥ ±×³É ÇÁ·Î±×·¥ ¾²´Â°Ô ÆíÇÏÁö ¾Ê³ª¿ä?
     
À¯¿ëÇÑ Á¤º¸, °¨»çÇÕ´Ï´Ù.
꺿À¸·Î ÀÛ¼ºÇØ ºÃ½À´Ï´Ù.

@echo off
setlocal

rem ÇöÀç ³¯Â¥¸¦ °¡Á®¿È
for /f "tokens=2 delims==" %%i in ('wmic os get localdatetime /value ^| find "="') do set currentDate=%%i
set year=%currentDate:~0,4%
set month=%currentDate:~4,2%

rem »èÁ¦ÇÒ ÆÄÀÏÀÌ À§Ä¡ÇÑ ÃÖ»óÀ§ µð·ºÅ丮 ¼³Á¤
set targetDir=D:\APM_Setup\htdocs\pasteldown\files\attach\binaries

rem ÇØ´ç ¿ùÀÇ ÆÄÀÏ »èÁ¦
pushd %targetDir%
for /r %%F in (*) do (
    rem ÆÄÀÏÀÇ »ý¼º ³¯Â¥¸¦ °¡Á®¿È
    for %%G in (%%F) do (
        set fileDate=%%~tG
    )
   
    rem ÆÄÀÏÀÇ ¿¬µµ¿Í ¿ùÀ» ÃßÃâ
    set fileYear=%fileDate:~0,4%
    set fileMonth=%fileDate:~5,2%

    rem ¸¸¾à ÆÄÀÏÀÇ ¿¬µµ¿Í ¿ùÀÌ ÇöÀçÀÇ ¿¬µµ¿Í ¿ù°ú °°´Ù¸é »èÁ¦
    if "%fileYear%"=="%year%" if "%fileMonth%"=="%month%" (
        del "%%F"
    )
)

popd
endlocal

¼³¸í:
1. set targetDir ºÎºÐ¿¡¼­ ´ë»ó µð·ºÅ丮¸¦ D:\APM_Setup\htdocs\pasteldown\files\attach\binaries·Î ¼³Á¤Çß½À´Ï´Ù.
2. for /r %%F in (*) ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÇÏÀ§ Æú´õ¸¦ Æ÷ÇÔÇÑ ¸ðµç ÆÄÀÏÀ» °Ë»öÇÕ´Ï´Ù.
3. ÆÄÀÏÀÇ »ý¼º ³¯Â¥¸¦ ±âÁØÀ¸·Î ÇØ´ç ¿ù¿¡ »ý¼ºµÈ ÆÄÀÏÀ» »èÁ¦ÇÕ´Ï´Ù.
ÀÌ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇϱâ Àü¿¡ Áß¿äÇÑ ÆÄÀÏÀÇ ¹é¾÷À» Çصδ °ÍÀ» ±ÇÀåÇÕ´Ï´Ù.
ÆĽºÅÚ´Ù¿îÀº µµ½º¸¦ °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù.
À©µµ¿ì¿¡¿ä.

÷ºÎÆÄÀÏÀº ÀúÀåÇϰųª º¸³»°Å³ª ÇÏ°í ¹Ù·Î Áö¿ì´Â ·çƾÀ» Ãß°¡ÇÏ´Â°Ô ÁÁ¾Æº¸ÀÔ´Ï´Ù.
ÇÁ·Î±×·¥À¸·Î ÇÒ ¼ö ÀÖ´Â °ÍÀ» µû·Î ¼öµ¿À¸·Î Á¤±âÀûÀ¸·Î Áö¿ì·Á°í ÇϽóª¿ä.
½ºÄÉÁñ ±îÁö °É·Á¸é.. ÀÏÀÌ ´õ ¸¹½À´Ï´õ.
PHP¿¡ ÇѴܾ Ãß°¡ ÇÏ¸é µÉ°ÍÀ» ¸Õ±æ µ¹¾Æ°¡½Ã·Á°í ÇϽó׿ä.

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadFile)) {
    echo "ÆÄÀÏÀÌ ¼º°øÀûÀ¸·Î ¾÷·ÎµåµÇ¾ú½À´Ï´Ù.\n";

    // ¾÷·ÎµåµÈ ÆÄÀÏÀÌ ¿øº» ÆÄÀÏ °æ·Î¿¡ Á¸ÀçÇÏ´Â °æ¿ì »èÁ¦
    if (file_exists($_FILES['userfile']['tmp_name'])) {
        unlink($_FILES['userfile']['tmp_name']);  // ¿øº» ÆÄÀÏ »èÁ¦
        echo "¿øº» ÆÄÀÏÀÌ »èÁ¦µÇ¾ú½À´Ï´Ù.\n";

unlink ¸í·É¾î¸¦ È°¿ëÇØ º¸¼¼¿ä.
¼úÀÌ 11-02
forfiles ¸í·É¾î¸é ÇÑÁÙÀÌ¸é ³¡³ª´Âµ¥ ƯÁ¤¿ù?À» ÁöÁ¤ÇÑ´Ù´Â°Ç ¿É¼ÇÀ» Àß Ã£¾ÆºÁ¾ß°ÚÁö¸¸ 180ÀÏ ÀÌÀü ·Î±×ÆÄÀÏ ÁöÁ¤µÈ Æú´õ ÇÏÀ§ ±îÁö ½Î±×¸® Áö¿ì´Â ¹èÄ¡´Â °£´ÜÇÕ´Ï´Ù.

forfiles /p "d:\LOG" /s /m *.log /d -180 /c "cmd /c del @path"

exit
Âü°í·Î Àü ÀÌ·¸°Ô ·Î±× ÅؽºÆ®¸¦ »èÁ¦ÇÏ°í ÀÖ½À´Ï´Ù. Á¢¼ÓÀÚ°¡ ³Ê¹« ¸¹¾Æ¼­ ¾ÐÃàÆú´õ¸¦ »ç¿ëÇÔ¿¡µµ »çÀÌÁî°¡ ³Ê¹« Ä¿¼­...
     
ÇÏÀ§Æú´õ¿¡ ÀÖ´Â ÆÄÀϸ¸ »èÁ¦ÇÏ´Â ¸í·É¾îÀϱî¿ä? ¾Æ´Ï¸é Æú´õ°·Î Áö¿öÁö³ª¿ä? Æú´õ´Â »èÁ¦ÇÏ¸é ¾ÈµÇ¼­ ¿©Â庾´Ï´Ù.


QnA
Á¦¸ñPage 9/5685
2015-12   1504845   ¹é¸Þ°¡
2014-05   4968513   Á¤ÀºÁØ1
2005-08   7374   Á¤ÈûÂù
2003-01   12355   ±è¿µÇö
2004-11   7305   ¿ø³«¿¬
2005-08   10799   ÀÌ¿ø±â
2002-05   17964   ÀÌ¿øº¹
2002-05   17727   ¹éÁ¤È¯
2002-10   13544   ÀÌÁÖÈ£
2002-05   17868   ±èµ¿¿í
2002-05   17348   ÀÌÇöÁø
2002-08   13623   ÃÖ¹ÎÈ£
2003-03   13029   ½É±Ô»ó
2002-05   16848   ¾ÈÁ¾¿õ
2003-06   10252   ÀÌ°æÁø
2004-01   10079   È«ÇÏ
2002-05   16988   Á¶¿øºó
2004-08   12120   Á¶¿µ¹ü
2006-03   5366   ȲÇýÁø
2005-03   6693   ȲÀçÁØ
2002-12   12525   ÀÌ°æÀÏ
2002-12   10782   À±½ÂÀÏ