Get-VBRWindowsGuestItem

In this article

    Short Description

    Returns Microsoft Windows guest OS files.

    Important

    This cmdlet is available starting from Veeam Backup & Replication 11a (build 11.0.1.1261).

    Product Edition: Standard, Enterprise, Enterprise Plus, Veeam Universal License

    Syntax

    This cmdlet provides cmdlet sets that allow you to:

    • Get top-level disks of the Microsoft Windows machines.

    Get-VBRWindowsGuestItem -Session <CRestoreSession> [<CommonParameters>]

    • Get an array of guest OS files of the Microsoft Windows machines by specifying their file paths.

    Get-VBRWindowsGuestItem -Session <CRestoreSession> [-Path <String[]>] [<CommonParameters>]

    • Get guest OS files of the Microsoft Windows machines.

    Get-VBRWindowsGuestItem -Session <CRestoreSession> [ParentItem <VBRFLRItem>] [-Name <String[]>] [-RecursiveSearch <SwitchParameter>] [<CommonParameters>]

    Detailed Description

    This cmdlet returns guest OS files of the Microsoft Windows machines.

    Parameters

    Parameter

    Description

    Type

    Required

    Position

    Accept Pipeline Input

    Session

    Specifies a running restore session of Microsoft Windows VMs guest OS files. The cmdlet will return disks of Microsoft Windows machines for which you run a restore session.

     

    Accepts the CRestoreSession object. To create this object, run the Get-VBRRestoreSession cmdlet.

    True

    Named

    True (ByValue, ByPropertyName)

    Path

    Specifies an array of file paths to the item that you want to restore.

    String[]

    False

    Named

    True (ByPropertyName)

    ParentItem

    For getting child items from disks.

    Returns child guest OS files of Microsoft Windows machines.

    Accepts the VBRFLRItem object. To create this object, run the Get-VBRWindowsGuestItem cmdlet.

    False

    Named

    True (ByPropertyName)

    Name

    Specifies an array of names for guest OS files of Microsoft Windows machines. The cmdlet will return guest OS files with these names.

    String[]

    False

    Named

    True (ByPropertyName)

    RecursiveSearch

    Defines that the cmdlet will look for guest OS files that are added to the specified folders and to all child folders.

    If you provide this parameter, the cmdlet will return an array of all guest OS files of Microsoft Windows machines. Otherwise, the cmdlet will return an array of guest OS that are added to the parent folder in Microsoft Windows machines.

    SwitchParameter

    False

    Named

    False

    <CommonParameters>

    This cmdlet supports Microsoft PowerShell common parameters. For more information on common parameters, see the About CommonParameters section of Microsoft Docs.

    Output Object

    The cmdlet returns the VBRFLRItem object that contains files and folders that are available for restore in Microsoft Windows machines.

    Examples

    Get-VBRWindowsGuestItemExample 1. Getting all Disks of Microsoft Windows Machine

    This example shows how to get all top-level disks of the WinSrv25 Microsoft Windows machine.

    $backup = Get-VBRBackup -Name "WinSrv25"

    $restorepoint = Get-VBRRestorePoint -Backup $backup -Name "Production VM"

    Start-VBRWindowsFileRestore -RestorePoint $restorepoint

    $session =  Get-VBRRestoreSession

    Get-VBRWindowsGuestItem -Session $session

    Perform the following steps:

    1. Get the restore session:
    1. Run the Get-VBRBackup cmdlet. Specify the Name parameter value. Save the result to the $backup variable
    2. Run the Get-VBRRestorePoint cmdlet. Specify the Backup and Name parameter values. Save the result to the $restorepoint variable.
    3. Run the Start-VBRWindowsFileRestore cmdlet. Specify the RestorePoint parameter value.
    4. Run the Get-VBRRestoreSession cmdlet. Save the result to the $session variable.
    1. Run the Get-VBRWindowsGuestItem cmdlet. Set the $session variable as the Session parameter value.

    Get-VBRWindowsGuestItemExample 2. Getting File Availabe in Microsoft Windows Machine by Providing File Path

    This example shows how to get the SummerTraining2020.pdf file by providing the C:\Documents\Training\SummerTraining.pdf file path. The cmdlet will get this file from a backup of the WinSrv25 Microsoft Windows machine.

    $backup = Get-VBRBackup -Name "WinSrv25"

    $restorepoint = Get-VBRRestorePoint -Backup $backup -Name "Production VM"

    Start-VBRWindowsFileRestore -RestorePoint $restorepoint

    $session =  Get-VBRRestoreSession

    Get-VBRWindowsGuestItem -Session $session -Path "C:\Documents\Training\SummerTraining2020.pdf"

    Perform the following steps:

    1. Get the restore session:
    1. Run the Get-VBRBackup cmdlet. Specify the Name parameter value. Save the result to the $backup variable
    2. Run the Get-VBRRestorePoint cmdlet. Specify the Backup and Name parameter values. Save the result to the $restorepoint variable.
    3. Run the Start-VBRWindowsFileRestore cmdlet. Specify the RestorePoint parameter value.
    4. Run the Get-VBRRestoreSession cmdlet. Save the result to the $session variable.
    1. Run the Get-VBRWindowsGuestItem cmdlet. Set the $session variable as the Session parameter value. Provide the Path parameter value.

    Get-VBRWindowsGuestItemExample 3. Getting Specific File Availabe in Folder of Microsoft Windows Machine

    This example shows how to get the CyclingTripJuly file from a backup of the WinSrv25 Microsoft Windows machine. The cmdlet will look for this file in the Vacation folder.

    $backup = Get-VBRBackup -Name "WinSrv25"

    $restorepoint = Get-VBRRestorePoint -Backup $backup -Name "Production VM"

    Start-VBRWindowsFileRestore -RestorePoint $restorepoint

    $session =  Get-VBRRestoreSession

    $items = Get-VBRWindowsGuestItem -Session $session -Name "Vacation"

    Get-VBRWindowsGuestItem -Session $session -ParentItem $items[1] -Name "CyclingTripJuly"

    Perform the following steps:

    1. Get the restore session:
    1. Run the Get-VBRBackup cmdlet. Specify the Name parameter value. Save the result to the $backup variable
    2. Run the Get-VBRRestorePoint cmdlet. Specify the Backup and Name parameter values. Save the result to the $restorepoint variable.
    3. Run the Start-VBRWindowsFileRestore cmdlet. Specify the RestorePoint parameter value.
    4. Run the Get-VBRRestoreSession cmdlet. Save the result to the $session variable.
    1. Run the Get-VBRWindowsGuestItem cmdlet. Set the $session variable as the Session parameter value. Save the result to the $items variable.
    2. Run the Get-VBRWindowsGuestItem cmdlet. Specify the following settings:
    • Set the $session variable as the Session parameter value.
    • Set the $items variable as the ParentItem parameter value.
    • Specify the Name parameter value.

    Get-VBRWindowsGuestItemExample 4. Getting Specific File Availabe in Folder and Its Subfolders in Microsoft Windows Machine

    This example shows how to get the AutumnReport file from a backup of the WinSrv25 Microsoft Windows machine. The cmdlet will look for this file in the Reports folder and its subfolders.

    $backup = Get-VBRBackup -Name "WinSrv25"

    $restorepoint = Get-VBRRestorePoint -Backup $backup -Name "Production VM"

    $session = Start-VBRWindowsFileRestore -RestorePoint $restorepoint

    $items = Get-VBRWindowsGuestItem -Session $session -Name "Reports"

    Get-VBRWindowsGuestItem -Session $session -ParentItem $items[1] -Name "AutumnReport" -RecursiveSearch

    Perform the following steps:

    1. Get the restore session:
    1. Run the Get-VBRBackup cmdlet. Specify the Name parameter value. Save the result to the $backup variable
    2. Run the Get-VBRRestorePoint cmdlet. Specify the Backup and Name parameter values. Save the result to the $restorepoint variable.
    3. Run the Start-VBRWindowsFileRestore cmdlet. Set the $restorepoint as the RestorePoint parameter value. Save the result to the $flerestore variable.
    1. Run the Get-VBRWindowsGuestItem cmdlet. Set the $session variable as the Session parameter value. Save the result to the $items variable.
    1. Run the Get-VBRWindowsGuestItem cmdlet. Specify the following settings:
    • Set the $session variable as the Session parameter value.
    • Set the $items variable as the ParentItem parameter value.
    • Specify the Name parameter value.
    • Provide the RecursiveSearch parameter.

    Related Commands