· 6 years ago · Aug 11, 2019, 04:24 AM
1''''''''''''''''''''''''''''''''''''''''''''''''''''''
2' Antipatheia ScriptDev | antipatheia [at] gmail.com
3'
4' This software is free to use and modify,
5' however Original author must remain named.
6' Please comment the original if changes are made.
7''''''''''''''''''''''''''''''''''''''''''''''''''''''
8
9Dim WshShell, fso, objArgs, oDir
10
11Set WshShell = WScript.CreateObject("WScript.Shell")
12Set fso = CreateObject("Scripting.FileSystemObject")
13Set objArgs = WScript.Arguments
14
15Set f = fso.GetFile(objArgs(0))
16pName = fso.GetBaseName(objArgs(0)) & "." & fso.GetExtensionName(objArgs(0))
17fName = f.ParentFolder & "\" & pName
18Set regEx = New RegExp
19regEx.Global = True
20
21If Not (IsDate(Left(pName, 10))) Then
22 regEx.Pattern = "_\d{4}.*$"
23 tmpVar = regEx.Replace(pName,"")
24 regEx.Pattern = "_"
25 aName = regEx.Replace(tmpVar," ")
26Else
27 aName = InputBox(pName, "App Name?", iDef)
28End If
29
30oDir = fso.GetParentFolderName(objArgs(0)) & "\" & aName
31If Not (fso.FolderExists(oDir)) Then
32 fso.CreateFolder(oDir)
33End If
34
35regEx.Pattern = "^\w+\+*_"
36tmpVar = regEx.Replace(pName, "")
37regEx.Pattern = "-\d{2}.*$"
38dateY = regEx.Replace(tmpVar, "")
39
40oDir = fso.GetParentFolderName(objArgs(0)) & "\" & aName & "\" & dateY
41If Not (fso.FolderExists(oDir)) Then
42 fso.CreateFolder(oDir)
43End If
44
45If Not (IsDate(Left(pName, 10))) Then
46 regEx.Pattern = "^\w*\+*_\d+-"
47 tmpVar = regEx.Replace(pName, "")
48 regEx.Pattern = "-\d{2}_.*$"
49 dateM = regEx.Replace(tmpVar, "")
50Else
51 dateM = Mid(tmpVar, 6, 2)
52End If
53
54oDir = fso.GetParentFolderName(objArgs(0)) & "\" & aName & "\" & dateY & "\" & dateM
55If Not (fso.FolderExists(oDir)) Then
56 fso.CreateFolder(oDir)
57End If
58
59oDir = fso.GetParentFolderName(objArgs(0)) & "\" & aName & "\" & dateY & "\" & dateM & "\"
60
61fso.CopyFile objArgs(0), oDir & pName
62
63WshShell.Run("explorer " & oDir)
64
65WshShell = Null
66fso = Null
67objArgs = Null
68f = Null
69pName = Null
70fName = Null
71aName = Null
72tmpVar = Null
73dateY = Null
74dateM = Null
75oDir = Null
76regEx = Null
77
78WScript.Quit