Manipulating Files from Scripts
One of the myths surrounding the Windows Script Host, and VBScript in particular, is that there’s no provision for accessing the filesystem (copying, deleting, and writing to files). This assumption is based on the fact that VBScript, when used in web pages, is not permitted to access the filesystem for security reasons.
The following routines rely on the
FileSystemObject
object, providing most necessary file
operations. The names I’ve chosen for these functions and
subroutines are based on what they act upon and what they’re
used for; for example, the FolderCopy subroutine
is used to copy a folder, and the FileCopy
subroutine is used to copy a file.
The following two functions return properties of drives—whether a specific drive letter exists and how much free space a specified drive has, respectively:
Function DriveExists(DriveLetter)
Set FileObject = CreateObject("Scripting.FileSystemObject")
DriveExists = FileObject.DriveExists(DriveLetter)
End Function
Function DriveFreeSpace(DriveLetter)
If Left(DriveLetter,1) <> ":" Then DriveLetter = DriveLetter & ":"
Set FileObject = CreateObject("Scripting.FileSystemObject")
Set DriveHandle = _
FileObject.GetDrive(FileObject.GetDriveName(DriveLetter))
DriveFreeSpace = DriveHandle.FreeSpace
End FunctionThese next seven subroutines and functions are used to manipulate folders. The functions are used to retrieve information about a folder, and the subroutines are used to perform actions on a folder. The ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access