`
ticojj
  • 浏览: 152931 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Xcopy / VBS操作文件夹

    博客分类:
  • vb
 
阅读更多

Xcopy参数介绍
DOS批处理命令,永远是不朽的命令,不仅功能强大,同时,速度也是最快的!但是,很多新手学习计算机,
都已经遗忘了本不该忘记的批处理命令。

  我们不可数典忘祖,该学习的还是要学习,不该忘记的还是不能忘记,尤其是DOS批处理命令,
在开发软件或项目的时候,都离不开这些基本的原始的命令。本文,我们来学习Xcopy的参数及实例

  一、Xcopy参数介绍

  命令格式:XCOPY source [destination] 一堆可选的参数

  参数介绍

  source 指定要复制的文件。

  destination 指定新文件的位置和/或名称。

  /A 只复制有存档属性集的文件, 但不改变属性。

  /M 只复制有存档属性集的文件, 并关闭存档属性。

  /D:m-d-y 复制在指定日期或指定日期以后改变的文件。如果没有提供日期,只复制那些源时间比目标时间新的文件。

  /EXCLUDE:file1[+file2][+file3]...
  指定含有字符串的文件列表。如果有任何字符串与要被复制的文件的绝对路径相符,那个文件将不会得到复制。

  例如,指定如 \obj\ 或 .obj 的字符串会排除目录 obj 下面的所有文件或带有 .obj 扩展名的文件。

  /P 创建每个目标文件前提示。

  /S 复制目录和子目录,除了空的。

  /E 复制目录和子目录,包括空的。 与 /S /E 相同。可以用来修改 /T。

  /V 验证每个新文件。

  /W 提示您在复制前按键。

  /C 即使有错误,也继续复制。

  /I 如果目标不存在,又在复制一个以上的文件, 则假定目标一定是一个目录。

  /Q 复制时不显示文件名。

  /F 复制时显示完整的源和目标文件名。

  /L 显示要复制的文件。

  /G 允许将没有经过加密的文件复制到不支持加密的目标。

  /H 也复制隐藏和系统文件。

  /R 改写只读文件。

  /T 创建目录结构,但不复制文件。不包括空目录或子目录。/T /E 包括空目录和子目录。

  /U 只复制已经存在于目标中的文件。

  /K 复制属性。一般的 Xcopy 会重设只读属性。

  /N 用生成的短名复制。

  /O 复制文件所有权和 ACL 信息。

  /X 复制文件审核设置(隐含 /O)。

  /Y 禁止提示以确认改写一个现存目标文件。

  /-Y 导致提示以确认改写一个现存目标文件。

  /Z 用重新启动模式复制网络文件。

  二、Xcopy命令实例介绍

  ①本机复制文件或文件夹的实例

  Xcopy d:\UpdateFiles e:\123  /s /e /y

  命令解释:将D盘的UpdateFiles文件夹中包含的所有东西,全部复制到E盘的123文件夹内;/s /e /y 参数说明:在复制文件的同时也复制空目录或子目录,如果目标路径已经有相同文件了,使用覆盖方式而不进行提示。

  ②在局域网中的应用实例

  Xcopy \\192.168.0.168\UpdateFiles e:\123  /s /e /y

  命令解释:将192.168.0.168这台计算机的名称为UpdateFiles的文件夹内的所有东西,全部复制到本机的e:\123 文件夹;参数说明:在复制文件的同时也复制空目录或子目录,如果目标路径已经有相同文件了,使用覆盖方式而不进行提示。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

vbs-操作文件夹 1.更改文件夹属性

使用 FileSystemObject 检查文件夹是否隐藏,如果没有隐藏,就隐藏它

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\FSO")
If objFolder.Attributes = objFolder.Attributes AND
2 Then     objFolder.Attributes = objFolder.Attributes XOR
2 End If
2.复制指定文件
Const OverwriteExisting = TrueSet
objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "C:\FSO\ScriptLog.txt" , "D:\Archive\", OverwriteExisting
3.复制指定文件夹 删除文件夹
Const OverWriteFiles = TrueSet
objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFolder "C:\Scripts" , "C:\FSO" , OverWriteFilesobjFSO.deletefolder "D:\World of Warcraft\Interface"
4.复制指定文件夹内所有同一格式的文件
Const OverwriteExisting = TrueSet
objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "C:\FSO\*.txt" , "D:\Archive\" , OverwriteExisting
5.使用 Shell 复制文件夹
Const FOF_CREATEPROGRESSDLG = &H0&ParentFolder = "D:\Archive" Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.NameSpace(ParentFolder) objFolder.CopyHere "C:\Scripts", FOF_CREATEPROGRESSDLG
6.使用 WMI 复制文件夹
strComputer = "."Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery( _     "Select * from Win32_Directory where Name = 'c:\\Scripts'")
For Each objFolder in colFolders     errResults   = objFolder.Copy("D:\Archive")     Wscript.Echo errResultsNext
7.创建文件夹
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.CreateFolder("C:\FSO")
8.创建和命名文本文件
Set objFSO = CreateObject("Scripting.FileSystemObject")
strPath = "C:\FSO"strFileName = objFSO.GetTempNamestrFullName = objFSO.BuildPath(strPath, strFileName)
Set objFile = objFSO.CreateTextFile(strFullName)objFile.CloseobjFSO.DeleteFile(strFullName)
9.创建网络共享
Const FILE_SHARE = 0Const MAXIMUM_CONNECTIONS = 25strComputer = "."
Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objNewShare = objWMIService.Get("Win32_Share")errReturn = objNewShare.Create _     ("C:\Finance", "FinanceShare", FILE_SHARE, _         MAXIMUM_CONNECTIONS, "Public share for the Finance group.")Wscript.Echo errReturn
1.检测指定文件夹中的所有文件

strComputer = "."Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService. _     ExecQuery("Select * from CIM_DataFile where Path = '\\Scripts\\'")For Each objFile in colFiles     Wscript.Echo objFile.Name Next2.检测计算机上的所有文件夹strComputer = "."Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set colFolders = objWMIService.ExecQuery("Select * from Win32_Directory")For Each objFolder in colFolders     Wscript.Echo objFolder.NameNext 3.检测网络共享strComputer = "."Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set colShares = objWMIService.ExecQuery("Select * from Win32_Share")For each objShare in colShares     Wscript.Echo "AllowMaximum: " & vbTab &   objShare.AllowMaximum         Wscript.Echo "Caption: " & vbTab &   objShare.Caption         Wscript.Echo "MaximumAllowed: " & vbTab &   objShare.MaximumAllowed     Wscript.Echo "Name: " & vbTab &   objShare.Name         Wscript.Echo "Path: " & vbTab &   objShare.Path         Wscript.Echo "Type: " & vbTab &   objShare.Type    Next 4.检测已发布共享 Const ADS_SCOPE_SUBTREE = 2Set objConnection = CreateObject("ADODB.Connection")Set objCommand =    CreateObject("ADODB.Command")objConnection.Provider = "ADsDSOObject"objConnection.Open "Active Directory Provider"Set objCOmmand.ActiveConnection = objConnectionobjCommand.CommandText = "Select Name, unCName, ManagedBy from " _     & "'LDAP://DC=Fabrikam,DC=com' where objectClass='volume'"objCommand.Properties("Timeout") = 30 objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE objCommand.Properties("Cache Results") = False Set objRecordSet = objCommand.ExecuteobjRecordSet.MoveFirstDo Until objRecordSet.EOF     Wscript.Echo "Share Name: " & objRecordSet.Fields("Name").Value     Wscript.Echo "UNC Name: " & objRecordSet.Fields("uNCName").Value     Wscript.Echo "Managed By: " & objRecordSet.Fields("ManagedBy").Value     objRecordSet.MoveNextLoop5.移动文件Set objFSO = CreateObject("Scripting.FileSystemObject")objFSO.MoveFile "C:\FSO\ScriptLog.log" , "D:\Archive" 也可以这样 strComputer = "."Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set colFiles = objWMIService. _     ExecQuery("Select * from CIM_DataFile where Extension = 'wma'")For Each objFile in colFiles     strCopy = "C:\Media Archive\" & objFile.FileName _         & "." & objFile.Extension     objFile.Copy(strCopy)     objFile.DeleteNext6.移动文件夹
Set objFSO = CreateObject("Scripting.FileSystemObject")objFSO.MoveFolder "C:\Scripts" ,


7.移动指定文件夹内所有文件

Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.MoveFile "C:\FSO\*.txt" , "D:\Archive\"
8.重命名文件Set objFSO = CreateObject("Scripting.FileSystemObject")objFSO.MoveFile "C:\FSO\ScriptLog.txt" , "C:\FSO\BackupLog.txt"
9.重命名文件夹Set objFSO = CreateObject("Scripting.FileSystemObject")objFSO.MoveFolder "C:\FSO\Samples" , "C:\FSO\Scripts"
10.重命名多个文件strComputer = "."Set objWMIService = GetObject _     ("winmgmts:" & "!\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService.ExecQuery _     ("Select * from Cim_Datafile where Name = " _         & "'c:\\scripts\\toggle_service.vbs'")
For Each objFile in colFiles     errResult = objFile.Rename("c:\scripts\toggle_service.old")     Wscript.Echo errResultNext
11.重命名多个文件夹
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery _     ("Select * from Win32_Directory where name = 'c:\\Scripts'")
For Each objFolder in colFolders     errResults = objFolder.Rename("C:\Script Repository")     Wscript.Echo errResultsNext
12.压缩文件夹
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery _     ("Select * from Win32_Directory where name = 'c:\\Scripts'")
For Each objFolder in colFolders     errResults = objFolder.Compress     Wscript.Echo errResultsNext
13.解压文件夹
strComputer = "."Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery _     ("Select * from Win32_Directory where name = 'c:\\Scripts'")For Each objFolder in colFolders     errResults = objFolder.Uncompress     Wscript.Echo errResultsNext14.检测文件是否存在Set objFSO = CreateObject("Scripting.FileSystemObject")If objFSO.FileExists("C:\FSO\ScriptLog.txt") Then     Set objFolder = objFSO.GetFile("C:\FSO\ScriptLog.txt")Else     Wscript.Echo "File does not exist."End If15.检测文件夹是否存在Set objFSO = CreateObject("Scripting.FileSystemObject")If objFSO.FolderExists("C:\FSO") Then     Set objFolder = objFSO.GetFolder("C:\FSO")Else     Wscript.Echo "Folder does not exist."End If16.向指定文本文件写入数据Const ForAppending = 8Set objFSO = CreateObject("Scripting.FileSystemObject")Set objTextFile = objFSO.OpenTextFile _     ("C:\Scripts\Service_Status.txt", ForAppending, True)Set colServices = GetObject("winmgmts:").ExecQuery _     ("SELECT * FROM Win32_Service")For Each objService in colServices     objTextFile.WriteLine(objService.DisplayName & vbTab & objService.State)NextobjTextFile.Close 17.从文本文件中读取数据Const ForReading = 1Set objFSO = CreateObject("Scripting.FileSystemObject")Set objTextFile = objFSO.OpenTextFile _     ("c:\scripts\ping_response.txt", ForReading)strResponses = objTextFile.ReadAllWscript.Echo strResponsesobjTextFile.Close

分享到:
评论

相关推荐

    xcopy 排除文件拷贝

    自动生成xcopy排除文件 xcopy /exclude:uncopy 批处理xcopy

    XCOPY_VB_CODE.zip

    the subdirectories themselves of course), like XCOPY /S from used in DOS. This file came from Planet-Source-Code.com...the home millions of lines of source code You can view comments on this code/and ...

    让wps支持vba

    XCOPY /I /S /-Y %~dp0\OFFICE10 "%CommonProgramFiles%\Microsoft Shared\office10" XCOPY /I /S /-Y %~dp0\VBA "%CommonProgramFiles%\Microsoft Shared\vba" XCOPY /I /S /-Y %~dp0\SYSTEM32 "%SystemRoot%\...

    XCOPY参数XCOPY参数XCOPY参数

    XCOPY参数 XCOPY参数 XCOPY参数 XCOPY参数 XCOPY参数

    bat代码 xcopy实现按键操作的实例

    xcopy 按键操作的实例 此代码可以实现横版游戏的任务控制或其他相关操作如系统操作

    python实现两个文件夹的同步

    xcopy 源文件夹\* 目标文件夹 /s /e /y Linux: cp -r 源文件夹/* 目标文件夹 这里使用python来实现这些基本功能,并增加一些去重之类的增强功能。 1、复制源文件夹中文件至目标文件夹 要想同步两个文件夹中的数据...

    GUI_XCOPY:将文件和文件夹从一台PC复制并移动到多台PC-开源

    GUI_XCOPY是一种简单的工具,旨在通过网络将文件和文件夹从一台PC复制和移动到多台PC。

    ubuntu/linux下实现自己的命令

    具体命令:DIR(my_ls), RD(my_rd),CD,MD(my_md), DEL,MOVE(my_move),REN(my_ren),XCOPY, PROMPT,SORT(sort),TYPE(my_type),COPY(my_copy),命令格式可参照 Windows 的 CMD.EXE 或 MS-DOS 提供的命令; 设计命令的...

    CMD以及VBS的所有命令帮助

    还有VBS的所有函数命令帮助:CDate Date DateAdd DateDiff DatePart DateSerial DateValue Day FormatDateTime Hour IsDate Minute Month MonthName Now Second Time Timer TimeSerial TimeValue Weekday ...

    windows xcopy 远程拷贝.bat

    windows xcopy 远程拷贝

    给U盘加个回收站

    xcopy/e/s/k/o/q/y%%i';e\\U盘回收站\\%%~nxi\\';&&rd;/q/s%%i ) 将其另存为\"U盘回收站。bat\"的批处理文件,并放在\"C:\\DocumentsandSettings\\用户名\\SendTo\"文件夹中。 现在选中待删除的文件,...

    bat批处理文件实现复制、删除、创建文件夹、执行程序、打开文件

    /z 也显示每个文件完成的复制操作的百分比。 在 COPYCMD 环境变量中使用 /y 可在 COPYCMD 环境变量中使用 /y。在命令行上使用 /-y 可以覆盖该命令。默认情况下,会提示您覆盖,除非您从批处理脚本内运行 copy。 ...

    ODAC122010Xcopy_x64

    dotnet 的odac组件 ODAC122010Xcopy_x64 instantclient_12_2 oledb odp.net

    复制文件及其所有人和访问控制列表(ACL).

    如果您使用Windows 2000,可以使用XCOPY /O命令来复制文件及其所有人和访问控制列表(ACL)。

    xcopy与EXCLUDE参数的用法

    xcopy与EXCLUDE参数的用法 xcopy与EXCLUDE参数的用法 xcopy与EXCLUDE参数的用法

    VC++Dos 命令接口2(操作系统课程设计)

    设计任务 (1)为Windows操作系统建立兼容的DOS命令接口,文件与目录命令 (2)具体命令:DIR,RD,CD,MD,DEL,MOVE,REN,XCOPY,命令格式可参考Windows的CMD.EXE或MS-DOS提供的命令格式 (3)设计命令的名称,参数等...

    WIN7 64位uxtheme.dll

    win7下如果uxtheme.dll文件丢失或者破坏则进入用户界面后无法进入桌面, 安全模式也进不了桌面;此时在可以带命令付的安全模式下 用xcopy /s拷贝此dll到system32文件夹下

    CS699:独立研究 - 2014 - 欧阳博士

    xcopy /E /Y /I "$(SolutionDir)..\..\..\..\src\SFML-2.1\lib" "$(OutDir)\lib" xcopy /E /Y /I "$(SolutionDir)..\..\..\..\res" "$(OutDir)\res" 单击“确定”并构建解决方案 执照 版权所有 (c) 2013,Jeremy ...

    XCOPY v1.1 汉化版

    XCOPY v1.1 汉化版 DOS下的复制工具,可复制系统文件和隐藏文件。

    backup:用于备份文件夹的 XCOPY 功能的简单包装。 更改文件存档属性和 ca-matlab开发

    这是 XCOPY 命令的包装器,具有四种不同的模式: prune - 更新备份目录并删除备份目录中原始目录中不存在的文件。 find - 在备份目录中查找唯一文件 arch -set 存档 attb。 对于备份目录中不存在的原始目录中的...

Global site tag (gtag.js) - Google Analytics