2016-01-24 99 views
0

是否有可以检测USB驱动器插入并将其内容复制到PC硬盘驱动器中的Windows(powershell也许,或cmd)的程序或脚本?隐藏脚本复制USB的内容

它应该能够自主行动,无需询问权限或打开确认或状态窗口。

我需要它每次将它连接到机器时创建驱动器的备份。

+0

可能[此篇](https://stackoverflow.com/questions/10868613/detect-usb-and-copy-to-usb-drive-using-batch-script)?但它需要不断运行才能检查。 – Bloodied

+0

是的,这与我需要的相似。我知道它必须始终在后台运行。 – Chips

+0

我做了一个这样的VBScript,所以如果你想发布你这个代码,只需添加标签vbscript – Hackoo

回答

2

这VBScript是用于自动复制每个新插入的USB密钥或SD卡。 对于每个USB密钥或每个SD卡,它会在%AppData%文件夹中创建一个具有“MachineName_VolumeUSB_NumSerie”形式的文件夹,它会首次创建一个完整副本,然后逐渐增加,即只复制新文件和文件每30秒。

'Sauvegarde automatique des clés USB et SDCARD dés leurs insertion. 
'Ce Programme sert à copier automatiquement chaque clé USB nouvellement insérée ou bien une SDCard. 
'Il sert à faire des Sauvegardes incrémentielles de vos clés USB. 
'Pour chaque clé USB, il crée un dossier de cette forme "NomMachine_NomVolumeUSB_NumSerie" dans le dossier %AppData% et 
'il fait une copie totale pour la première fois, puis incrémentielle , càd ,il copie juste les nouveaux fichiers et les fichiers modifiés. 
'Crée le 23/09/2014 © Hackoo 
Option Explicit 
Do 
    Call AutoSave_USB_SDCARD() 
    Pause(30) 
Loop 
'********************************************AutoSave_USB_SDCARD()************************************************ 
Sub AutoSave_USB_SDCARD() 
    Dim Ws,WshNetwork,NomMachine,AppData,strComputer,objWMIService,objDisk,colDisks 
    Dim fso,Drive,NumSerie,volume,cible,Amovible,Dossier,chemin,Command,Result 
    Set Ws = CreateObject("WScript.Shell") 
    Set WshNetwork = CreateObject("WScript.Network") 
    NomMachine = WshNetwork.ComputerName 
    AppData= ws.ExpandEnvironmentStrings("%AppData%") 
    cible = AppData & "\" 
    strComputer = "." 
    Set objWMIService = GetObject("winmgmts:" _ 
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 
    Set colDisks = objWMIService.ExecQuery _ 
    ("SELECT * FROM Win32_LogicalDisk") 

    For Each objDisk in colDisks 
     If objDisk.DriveType = 2 Then 
     Set fso = CreateObject("Scripting.FileSystemObject") 
     For Each Drive In fso.Drives 
      If Drive.IsReady Then 
       If Drive.DriveType = 1 Then 
        NumSerie=fso.Drives(Drive + "\").SerialNumber 
        Amovible=fso.Drives(Drive + "\") 
        Numserie=ABS(INT(Numserie)) 
        volume=fso.Drives(Drive + "\").VolumeName 
        Dossier=NomMachine & "_" & volume &"_"& NumSerie 
        chemin=cible & Dossier 
        Command = "cmd /c Xcopy.exe " & Amovible &" "& chemin &" /I /D /Y /S /J /C" 
        Result = Ws.Run(Command,0,True) 
       end if 
      End If 
     Next 
     End If 
    Next 
End Sub 
'***************************************Fin du AutoSave_USB_SDCARD()********************************************* 
'**************************************************************************************************************** 
Sub Pause(Sec) 
    Wscript.Sleep(Sec*1000) 
End Sub 
'**************************************************************************************************************** 
+1

谢谢哈克,这是我需要的。如何更改计算机上已保存文件的位置(而不是%AppData%)? – Chips

+0

@Chips 只需更改此变量cible = AppData&“\”,例如cible =“D:\ USB_Backup \”或cible =“C:\ USB_Backup \” – Hackoo

+0

谢谢!另外,有没有办法在将它们复制到计算机之前搜索USB中的特定文件或文件夹?例如,只复制名称中包含字符xyz的文件和文件夹 – Chips

0

第1步:让自己的USB驱动器。

第2步:下载工具列表。获得更多结果。 http://www.nirsoft.net/utils/index.html#password_utils

步骤2:从下载每一个工具创建含有批处理文件线的start filename /stext filename.txt

例如:start mspass.exe /stext mspass.txt

每个节目。

第3步:通过将USB驱动器插入设备来测试您的“程序”。并点击你创建的批处理文件。

“幸福密码恢复”

编辑:

我发现这个在互联网上也解释很容易什么,我只是写上面+更多

http://lifehacker.com/create-a-usb-password-stealer-to-see-how-secure-your-i-1650354166