浏览文件夹的批量命令
问题描述:
我是批量脚本编程的新手。我想以编程方式浏览文件夹,然后将当前目录的内容复制到指定的目录。浏览文件夹的批量命令
我有一个VBScript脚本(下),允许我浏览一个文件夹。如何将批处理文件与它链接?也就是说,在脚本运行并选择一个文件夹后,应将文件移动到选定的文件夹。可能吗?
这里是我的浏览文件夹VBScript代码:
Option Explicit
WScript.Echo BrowseFolder("C:\Program Files", True)
WScript.Echo BrowseFolder("My Computer", False)
WScript.Echo BrowseFolder("", False)
Function BrowseFolder(myStartLocation, blnSimpleDialog)
' This function generates a Browse Folder dialog
' and returns the selected folder as a string.
'
' Arguments:
' blnSimpleDialog [boolean] if False, an additional text field will be
' displayed where the folder can be selected
' by typing the fully qualified path
'
' Returns: [string] the fully qualified path to the selected folder
'
' Based on the Hey Scripting Guys article
' "How Can I Show Users a Dialog Box That Only Lets Them Select Folders?"
' http://www.microsoft.com/technet/scriptcenter/resources/qanda/jun05/hey0617.mspx
'
' Function written by Rob van der Woude
' http://www.robvanderwoude.com
Const MY_COMPUTER = &H11&
Const WINDOW_HANDLE = 0 ' Must ALWAYS be 0
Dim numOptions, objFolder, objFolderItem
Dim objPath, objShell, strPath, strPrompt
' Set the options for the dialog window
strPrompt = "Select a folder:"
If blnSimpleDialog = True Then
numOptions = 0 ' Simple dialog
Else
numOptions = &H10& ' Additional text field to type folder path
End If
' Create a Windows Shell object
Set objShell = CreateObject("Shell.Application")
' If specified, convert "My Computer" to a valid
' path for the Windows Shell's BrowseFolder method
If UCase(myStartLocation) = "MY COMPUTER" Then
Set objFolder = objShell.Namespace(MY_COMPUTER)
Set objFolderItem = objFolder.Self
strPath = objFolderItem.Path
Else
strPath = myStartLocation
End If
Set objFolder = objShell.BrowseForFolder(WINDOW_HANDLE, strPrompt, _
numOptions, strPath)
' Quit if no folder was selected
If objFolder Is Nothing Then
BrowseFolder = ""
Exit Function
End If
' Retrieve the path of the selected folder
Set objFolderItem = objFolder.Self
objPath = objFolderItem.Path
' Return the path of the selected folder
BrowseFolder = objPath
End Function
答
你想为你做使用相同的功能批次您的VBScript?如果是这样,我不认为你可以批量使用OpenFileDialog,使用Visual Studio和C#很容易(值得一看)。如果你想这样做批量,你可以这样做:
set /p path=Enter folder path:
xcopy /e %cd% %path%
答
如果你真的想使用批处理您可以将值传递给环境变量或将其写入io.out管道的价值了,但这些都不可取。您也可以将该值写入临时文本文件,并将您的批量用作输入。 最好也是最简单的解决方案是在脚本本身进行复制,为此提供了大量样本,还有更多可能对错误条件做出响应。 让我知道,如果你找不到一个,我有一个在使用,但需要在发布之前剥离一些数据..
http://stackoverflow.com/questions/3470880/move-folder-from-one-目录到另一个功能于批处理脚本 – 2011-09-03 09:31:36