Sad Tux - Windows bias detected
This page contains Windows bias

About This Page

This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.

Bias Analysis

Detected Bias Types
powershell_heavy
missing_linux_example
windows_tools
Summary
The documentation provides detailed instructions and code samples exclusively for Azure PowerShell, which is a Windows-centric tool, and does not include equivalent examples for Linux-native tools or CLI (such as Azure CLI or Bash scripts). There is no mention of Linux shell commands or cross-platform scripting options, and the only automation examples are in PowerShell. This creates a bias toward Windows users and may hinder Linux users from following the documentation effectively.
Recommendations
  • Add equivalent Azure CLI (az) command examples for all PowerShell cmdlets, as Azure CLI is cross-platform and widely used on Linux.
  • Include Bash shell script examples for common tasks, especially for endpoint creation, management, and deletion.
  • Explicitly mention that PowerShell Core (v7+) is cross-platform, but also provide guidance for users who prefer native Linux tools.
  • Where possible, provide REST API examples (using curl or similar tools) for advanced users who may want to automate tasks outside of PowerShell.
  • Balance the order of examples: present Azure CLI or Bash examples before or alongside PowerShell to avoid the impression that Windows tools are the primary or only supported automation method.
GitHub Create Pull Request

Scan History

Date Scan Status Result
2026-01-14 00:00 #250 in_progress Biased Biased
2026-01-13 00:00 #246 completed Biased Biased
2026-01-11 00:00 #240 completed Biased Biased
2026-01-10 00:00 #237 completed Biased Biased
2026-01-09 00:34 #234 completed Biased Biased
2026-01-08 00:53 #231 completed Biased Biased
2026-01-06 18:15 #225 cancelled Clean Clean
2025-08-19 00:01 #85 completed Clean Clean
2025-07-13 21:37 #48 completed Clean Clean
2025-07-12 23:44 #41 cancelled Biased Biased

Flagged Code Snippets

     Get-AzStorageMoverEndpoint `
       -ResourceGroupName $resourceGroupName `
       -StorageMoverName $storageMoverName ` 
       -Name "demoTarget" | `
     Update-AzStorageMoverAzStorageSmbFileShareEndpoint `
       -Description "SMB fileshare endpoint"

   
      
      Connect-AzAccount -Subscription $subscriptionID
      
      
      New-AzStorageMoverNfsEndpoint `
          -Name "nfsSourceEndpoint" `
          -ResourceGroupName $resourceGroupName `
          -StorageMoverName $storageMoverName `
          -Host $sourceHost `
          -Export $sourceShare `
       
      
   New-AzStorageMoverAzStorageSmbFileShareEndpoint `
      -Name "smbTargetEndpoint" ` 
      -ResourceGroupName $resourceGroupName `
      -StorageMoverName $storageMoverName ` 
      -StorageAccountResourceId $targetResourceID `
      -FileShareName $targetFileshare

   
     Get-AzStorageMoverEndpoint `
       -ResourceGroupName $resourceGroupName `
       -StorageMoverName $storageMoverName ` 
       -Name "demoTarget" 

   
Remove-AzStorageMoverEndpoint `
   -ResourceGroupName $resourceGroupName `
   -StorageMoverName $storageMoverName ` 
   -Name "demoTarget"

   ## Ensure you are running the latest version of PowerShell 7
   $PSVersionTable.PSVersion

   ## Your local execution policy must be set to at least remote signed or less restrictive
   Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

   ## If you don't have the general Az PowerShell module, install it first
   Install-Module -Name Az -Scope CurrentUser -Repository PSGallery -Force

   ## Lastly, the Az.StorageMover module is not installed by default and must be manually requested.
   Install-Module -Name Az.StorageMover -Scope CurrentUser -Repository PSGallery -Force
   
      
      ## Set variables
      $subscriptionID    = "[Subscription GUID]"
      $resourceGroupName = "[Resource group name]"
      $storageMoverName  = "[Storage mover resource's name]"
      $sourceHost        = "[Source share's host name or IP address]"
      $sourceShare       = "[Source share's name]"
      $targetResourceID  = "/subscriptions/[GUID]/resourceGroups/demoResourceGroup/"
      $targetResourceID += "providers/Microsoft.Storage/storageAccounts/demoAccount"

      ## For SMB endpoints 
      $smbFileshare      = "[Target fileshare name]"
      $usernameURI       = "https://demo.vault.azure.net/secrets/demoUser"
      $passwordURI       = "https://demo.vault.azure.net/secrets/demoPassword"

      ## For NFS endpoints
      $nfsContainer      = "[Blob container target]"
      
      
      New-AzStorageMoverSmbEndpoint `
         -Name "smbSourceEndpoint"
         -ResourceGroupName $resourceGroupName `
         -StorageMoverName $storageMoverName `
         -Host $sourceHost ` 
         -ShareName $sourceShare `
         -CredentialsUsernameUri $usernameURI `
         -CredentialsPasswordUri $passwordURI
       
      
   New-AzStorageMoverAzStorageContainerEndpoint `
     -Name "nfsTargetEndpoint" `
     -ResourceGroupName $resourceGroupName `
     -StorageMoverName $storageMoverName `
     -BlobContainerName $targetEpContainer `
     -StorageAccountResourceId $targetResourceID `

   
   Id                           : /subscriptions/<GUID>/resourceGroups/
                                 demoResourceGroup/providers/Microsoft.StorageMover/
                                 storageMovers/demoMover/endpoints/smbTargetEndpoint
   Name                         : demoTarget
   Property                     : {
                                    "endpointType": "AzureStorageSmbFileShare",
                                    "description": "",
                                    "provisioningState": "Succeeded",
                                    "storageAccountResourceId": "/subscriptions/[GUID]/
                                     resourceGroups/demoResourceGroup/providers/Microsoft.Storage/
                                     storageAccounts/contosoeuap",
                                    "fileShareName": "demoFileshare"
                                  }
   SystemDataCreatedAt          : 6/22/2023 1:19:00 AM
   SystemDataCreatedBy          : user@contoso.com
   SystemDataCreatedByType      : User
   SystemDataLastModifiedAt     : 6/22/2023 1:19:00 AM
   SystemDataLastModifiedBy     : user@contoso.com
   SystemDataLastModifiedByType : User
   Type                         : microsoft.storagemover/storagemovers/endpoints