AutoIt Example2008. 12. 25. 17:50

실은 간단한 것인데, 상용프로그램을 쓰는것 같아 작성하여 올려봅니다.


 

#include <File.au3>

Local $WorkDir = @ScriptDir, $szScriptName = "파일에 번호매기기"

Switch MsgBox(3, $szScriptName, StringFormat("이 폴더를 \n(%s)\n작업폴더로 지정하시겠습니까?", $WorkDir))
    Case 6;OK
    Case 7;Cancle
        $WorkDir = FileSelectFolder($szScriptName, "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}", 0, $WorkDir)
        If @error Then Exit
    Case 5;IGNORE
        Exit
EndSwitch
If StringRight($WorkDir, 1) <> "\" Then $WorkDir &= "\"
ConsoleWrite($WorkDir & @LF)
Local $sExt = InputBox($szScriptName, "순서를 넣을 파일의 확장자를 입력해 주세요" & @LF & "(*.txt)", "", "", 300, 130, -1, -1), $Temp
If @error Or $sExt = "" Then Exit
Local $sFName = InputBox($szScriptName, "파일명을 입력하세요" & "(지정파일명_번호.확장자) 형식입니다.", "", "", 300, 150, -1, -1)
If @error Or $sFName = "" Then Exit

_ReName($WorkDir, $sExt, $sFName)
Func _ReName($sDir, $sExt, $szFName)
    Local $szExt = StringTrimLeft($sExt, StringInStr($sExt, ".", 0, -1) - 1)

    Local $aFile = _FileListToArray($sDir, $sExt, 1), $FileFormat = "%s_%0" &  StringLen($aFile[0]) & "d%s"
    If Not @error Then
        For $i = 1 To $aFile[0]
            Local $szNewFile = StringFormat($FileFormat, $szFName, $i, $szExt)
            ConsoleWrite(StringFormat("%4d\t%s\t\n->\t%s\n", $i, $aFile[$i], $szNewFile));>확인용
            ;FileMove($sDir & $aFile[$i], $sDir & $szNewFile);>파일명 바꿀때.
        Next
    EndIf
EndFunc

ConsoleWrite 부분은 확인차 실행해 보시고,
FileMove는 파일명을 바꿀때 ; 를 제거하고 실행하면 실행하게 되겠습니다.

적절하게 수정해서 사용하시고, GUI는 작성하지 않았습니다.
별거 아닌데, 귀찮거든요.

'AutoIt Example' 카테고리의 다른 글

autoit-v3.3.10.0  (1) 2013.12.28
SoundPlay 함수이용 mp3재생기 만들기  (0) 2011.02.14
한글의 변환  (2) 2008.10.25
Autoit으로 트레이 런쳐 만들어 보기..  (11) 2008.06.16
[예제] @GUI_DRAGFILE  (0) 2008.01.23
Posted by 빈마음