0
저는 VBS 스크립팅을 처음 사용하기 때문에 이전에 Excel VBA로 몇 가지 작업을 수행했습니다. 이제 파일의 경로 이름을 가진 단일 파일의 이름을 바꾸는 스크립트가 있습니다 (각각 4 자로 잘립니다). 아래를 참조하십시오. 내 목적에 맞게 수정 한 스크립트입니다. 그러나, 단일 파일에 대해 scipt가 작동하는 것과 같은 방식으로 파일 이름 바꾸기 프로세스를 자동화하고 폴더 및 해당 하위 폴더의 모든 파일 이름을 바꾸고 싶습니다. 아무도이 질문으로 나를 도울 수 있습니까?경로 이름을 사용하여 파일의 이름을 바꾸는 VBS 스크립트
Set Shell = WScript.CreateObject("WScript.Shell")
Set Parameter = WScript.Arguments
For i = 0 To Parameter.Count - 1
Set fso = CreateObject("Scripting.FileSystemObject")
findFolder = fso.GetParentFolderName(Parameter(i))
PathName = fso.GetAbsolutePathName(Parameter(i))
FileExt = fso.GetExtensionName(Parameter(i))
Search = ":"
findFolder2= Right(PathName, Len(PathName) - InStrRev(PathName, Search))
arr = Split(findFolder2, "\")
For j=0 To UBound(arr)-1
arr(j) = ucase(Left(arr(j), 4))
Next
joined = Join(arr, "%")
prefix = right(joined, len(joined)-1)
fso.MoveFile Parameter(i), findFolder + "\" + prefix
next
나는 몇 가지 유용한 아이디어를 얻을 수 있다는 희망. 나무를 걷는 허비
안녕하세요, 도움을 주셔서 감사합니다. 나는이 스크립트를 msgbox와 함께 현재의 스크립트로 대체하려고했는데, 각 파일에 대한 스크립트를 호출하면 작동하지만 실패했다. thing.name = "hello.txt"만 삽입하면 하나의 파일 이름이 바뀝니다 ... 이름 바꾸기 스크립트를 위해 별도의 하위 파일을 작성한 다음 그 파일에서 호출해야합니다. 목적? – Herbie245
아 ... 알았어. 같은 이름을 가진 둘 이상의 파일의 이름을 바꿀 수 없기 때문이다 ... 사용. – Herbie245
안녕 ... 고마워. 이것은 이미 많은 도움이됩니다. thing.name = i & ".txt"와 같은 간단한 인수를 사용하여 모든 파일의 이름을 바꿀 수있었습니다. 즉 iterator입니다. 그러나 파일 이름을 바꾸는 절차는 매우 복잡합니다. 그래서 일단 스크립트를 통합하고 싶다면 작동하지 않습니다. 내 스크립트를 그대로 사용하고 재귀에서 호출 할 수 있습니까 ?? 고마워요 .- – Herbie245