Windows Vistaのラップトップでショートカットをクリックして、毎日バックアップしたいバーチャルハードディスク.vhdファイルがあります。私は半分ハザードバッチスクリプトファイル(BACKUP.BAT)は、cmdのウィンドウを開き、フラッシュドライブにファイルをコピーするジョブを達成するが、私は(マクロ)コピーを表示する方法を模倣したいと思いますファイルをコンピュータのフラッシュドライブに手動でドラッグアンドドロップします。別の問題は、これが行われたコンピュータに応じて、USBフラッシュドライブにドライブE:が割り当てられ(WinXP)、他のコンピュータ(Vista/7)にF:がドライブされている可能性があるということです。 (固定されたドライブ文字をUSBポートに挿入すると、USBドライブに固定ドライブ文字を静的に割り当てる方法はありません)ファイルをUSBフラッシュドライブにコピーするPowerShellスクリプトを作成するにはどうすればよいですか?
答えて
私はディスクのボリューム名を設定し、そのボリューム名でドライブを見つけます。ここで私はPowerShellでそれを行う方法は次のとおりです。
param([parameter(mandatory=$true)]$VolumeName,
[parameter(mandatory=$true)]$SrcDir)
# find connected backup drive:
$backupDrive = $null
get-wmiobject win32_logicaldisk | % {
if ($_.VolumeName -eq $VolumeName) {
$backupDrive = $_.DeviceID
}
}
if ($backupDrive -eq $null) {
throw "$VolumeName drive not found!"
}
# mirror
$backupPath = $backupDrive + "\"
& robocopy.exe $SrcDir $backupPath /MIR /Z
このコードは、リムーバブルドライブ(たとえば、USBドライブがちょうどプラグインさ)を使用して最後の準備を取得します。この方法では、固定を必要としない
$drives = [System.IO.DriveInfo]::GetDrives()
$r = $drives | Where-Object { $_.DriveType -eq 'Removable' -and $_.IsReady }
if ($r) {
return @($r)[-1]
}
throw "No removable drives found."
を事前に設定するボリューム名。名前を知らずに別のUSBドライブを使用することができます。
UPDATE は、あなたがこれを行うことができ、タスクのドラッグ&ドロップの部分を完了します。
C(例えば、メモ帳を使用)PowerShellスクリプトを作成します。ファイルのコピーToRemovableDrive.batを(作成
param($Source)
$drives = [System.IO.DriveInfo]::GetDrives()
$r = $drives | Where-Object { $_.DriveType -eq 'Removable' -and $_.IsReady }
if (!$r) {
throw "No removable drives found."
}
$drive = @($r)[-1]
Copy-Item -LiteralPath $Source -Destination $drive.Name -Force -Recurse
:\ TEMP_110628_041140 \コピーToRemovableDrive.ps1(パスはあなた次第です) )デスクトップに例えば、それはPowerShellスクリプトを使用しています。
powershell -file C:\TEMP\_110628_041140\Copy-ToRemovableDrive.ps1 %1
今すぐあなたのUSBドライブを接続し、デスクトップでCopy-ToRemovableDrive.bat
アイコンにファイルをドラッグすることができます。これは、ドラッグしたファイルを接続したばかりのUSBドライブにコピーする必要があります。
**注意:おそらく、このアプローチは、同時に** **使用されている複数のリムーバブルドライブがあり、ランダムにプラグを差し込んだり、取り外したりした場合、期待通りに機能しない可能性があります(最後に差し込まれたドライブを使用することです)。このシナリオでは、最後にプラグインされたドライブは、このコードによってプラグ/プラグシーケンスによって返されません。 –
@Roman:これでC:\ Users \ Frank \ My Documents \ My Virtual Machines \ example.vhdを最後に挿入したUSBフラッシュドライブにコピーし、Vistaの表示方法と同じようにコピー実行を表示するpowershellスクリプトを完成させることができます.vhdをフラッシュドライブにドラッグ&ドロップすると、フラッシュドライブの環境変数をあらかじめ定義しておいて静的に永久ドライブレターを設定することができました。 pluged inまたはout ..私はWindowsキーが異なるドライブ文字を再割り当てする理由を理解していません。 –
@Roman:Powershellにはまったく経験がありません.DOS BATスクリプトだけです。あなたのPowerShellスクリプトをメモ帳に入れて、.BAT拡張子で保存して実行しますか? –
- 1. USBフラッシュドライブ内のすべてのファイルを表示するメニューツリーを作成するにはどうすればよいですか?
- 2. C#のUSBフラッシュドライブからVID/PIDを取得するにはどうすればよいですか?
- 3. CでマウントされたUSBフラッシュドライブのサイズを調べるにはどうすればよいですか?
- 4. USBフラッシュドライブの製造元のシリアル番号を取得するにはどうすればよいですか?
- 5. USBフラッシュドライブからデータを読み取るにはどうすればよいですか?
- 6. BufferedReaderのコピーを作成するにはどうすればよいですか?
- 7. ファイル間にテキストをコピーするVSマクロを作成するにはどうすればよいですか?
- 8. R15でスクリプトを作成するにはどうすればよいですか?
- 9. ストアドプロシージャのスクリプトを作成するにはどうすればよいですか?
- 10. Powershellで実行可能ファイルのパラメータのリストを作成するにはどうすればよいですか?
- 11. Gradle:POMファイルをWARにコピーするにはどうすればよいですか?
- 12. JavaScriptでファイルを作成するにはどうすればよいですか?
- 13. USBで実行されるリンゴスクリプトを使用してファイルをUSBにコピーするにはどうすればよいですか?
- 14. Powershell:エラーがスクリプトに表示されないようにするにはどうすればよいですか?
- 15. osXでUSBドライバ、USBマップ、およびUSBポートにアクセスするにはどうすればよいですか?
- 16. bashスクリプトでcatを使用してファイルを作成するにはどうすればよいですか?
- 17. Linux端末で常に動作するスクリプトを作成するにはどうすればよいですか?
- 18. 自動作成するスクリプトを作成するにはどうすればよいですか?
- 19. .ebextensions/01_packages.configファイルを作成するにはどうすればよいですか?
- 20. package.jsonファイルを作成するにはどうすればよいですか?
- 21. .wsgiファイルを作成するにはどうすればよいですか?
- 22. Googleスクリプトで作成したファイルのドキュメントIDを取得するにはどうすればよいですか?
- 23. このPowerShellクエリをより効率的に作成するにはどうすればよいですか?
- 24. ウェブサイト上で動作するスクリプトを作成するにはどうすればよいですか?
- 25. USBフラッシュドライブ挿入時にPythonスクリプトを実行する方法
- 26. FTPを使用して別のサーバーにファイルをコピーするスクリプトを作成するにはどうすればよいですか?
- 27. テーブル行をHTMLページに変換するスクリプトを作成するにはどうすればよいですか?
- 28. ボタンをアクティブにするJavaスクリプトを作成するにはどうすればよいですか?
- 29. PowerShellでリソースマネージャーで作成されたAzureブロブを削除するにはどうすればよいですか?
- 30. ファイルをアルファベット順にコピーするにはどうすればいいですか?
@Michael:あなたの方法は、ローマンの例よりも信頼性が高いように見えます。週の作業日ごとにフラッシュドライブがあります(ラベル:BACKUP_MON、BACKUP_TUE ...)。曜日に応じて、ユーザーが正しいフラッシュドライブを挿入したかどうかを確認してください!.. robocopy.exeは、進行中のコピーのドラッグ&ドロップ表示でコピーを実行しますか?このpowershellスクリプトをメモ帳に置き、.BAT拡張子で保存して実行しますか?powershellには慣れていません。 –
@Michael:コピーしたいファイルは、常にC:¥Users¥Frank¥My Documents¥My Virtual Machines¥example.vhdにあり、example.vhdを対応するフラッシュドライブにコピーします。私は6つのフラッシュドライブを持っています。毎日1回、BACKUP_MON、BACKUP_TUE ... –
'robocopy'は、ファイルのコピーの進捗率を表示しますが、Windowsではそうではありません。注意: 'robocopy'はWindows XPにあらかじめインストールされていません。 –