{"id":18287275,"url":"https://github.com/theinvincibleknight/powershell-knowledge-hub","last_synced_at":"2025-09-11T02:39:09.481Z","repository":{"id":225805305,"uuid":"766905321","full_name":"theinvincibleknight/PowerShell-Knowledge-Hub","owner":"theinvincibleknight","description":"This repository serves as a central hub for storing PowerShell scripts, documents, and step-by-step tutorials related to Windows and PowerShell. Designed to support and accelerate your journey with PowerShell scripting and automation. Explore, contribute, and elevate your PowerShell skills!","archived":false,"fork":false,"pushed_at":"2025-02-26T06:55:18.000Z","size":33,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T06:33:18.256Z","etag":null,"topics":["automation","aws-powershell","aws-tools","powershell","powershell-script","scripting"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/theinvincibleknight.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-04T10:54:19.000Z","updated_at":"2025-02-26T06:55:22.000Z","dependencies_parsed_at":"2024-03-08T10:38:44.657Z","dependency_job_id":"e49ca573-c848-4769-9163-4a70cd058f44","html_url":"https://github.com/theinvincibleknight/PowerShell-Knowledge-Hub","commit_stats":null,"previous_names":["theinvincibleknight/powershell-knowledge-hub"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/theinvincibleknight/PowerShell-Knowledge-Hub","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theinvincibleknight%2FPowerShell-Knowledge-Hub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theinvincibleknight%2FPowerShell-Knowledge-Hub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theinvincibleknight%2FPowerShell-Knowledge-Hub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theinvincibleknight%2FPowerShell-Knowledge-Hub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/theinvincibleknight","download_url":"https://codeload.github.com/theinvincibleknight/PowerShell-Knowledge-Hub/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theinvincibleknight%2FPowerShell-Knowledge-Hub/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274568565,"owners_count":25309282,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-11T02:00:13.660Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","aws-powershell","aws-tools","powershell","powershell-script","scripting"],"created_at":"2024-11-05T13:25:50.781Z","updated_at":"2025-09-11T02:39:09.462Z","avatar_url":"https://github.com/theinvincibleknight.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# PowerShell-Knowledge-Hub\nThis repository primarily focuses on PowerShell scripts for managing and automating AWS-related tasks. It may also include some system administration and operational scripts.\n\n## Installing the AWS Tools for PowerShell on Windows\nA Windows-based computer can run any of the AWS Tools for PowerShell package options:\n- AWS.Tools - The modularized version of AWS Tools for PowerShell. Each AWS service is supported by its own individual, small module, with shared support modules AWS.Tools.Common and AWS.Tools.Installer.\n- AWSPowerShell.NetCore - The single, large-module version of AWS Tools for PowerShell. All AWS services are supported by this single, large module.\n\nSetting up the AWS Tools for PowerShell involves the following high-level tasks, described in detail in this topic.\n1. Install the AWS Tools for PowerShell package option that's appropriate for your environment.\n2. Verify that script execution is enabled by running the Get-ExecutionPolicy cmdlet.\n3. Import the AWS Tools for PowerShell module into your PowerShell session.\n\n## Install AWS.Tools on Windows\nYou can install the modularized version of AWS Tools for PowerShell on computers that are running Windows with Windows PowerShell 5.1, or PowerShell Core 6.0 or later. \n\nYou can install `AWS.Tools` in one of three ways:\n\n- Using the cmdlets in the `AWS.Tools` package. The `AWS.Tools.Installer` module simplifies the installation and update of other `AWS.Tools` modules. The `AWS.Tools.Installer` requires, automatically downloads, and installs an updated version of `PowerShellGet`. The `AWS.Tools.Installer` module automatically keeps your module versions in sync; when you install or update to a newer version of one module, the cmdlets in the `AWS.Tools.Installer` automatically update all of your other `AWS.Tools` modules to the same version.\n- Downloading the modules from [AWS.Tools.zip](https://sdk-for-net.amazonwebservices.com/ps/v4/latest/AWS.Tools.zip) and extracting them in one of the module folders. You can discover your module folders by displaying the value of the PSModulePath environment variable.\n- Installing each service module from the PowerShell Gallery using the `Install-Module` and `Install-AWSToolsModule` cmdlets. This method is described in the following procedure.\n\n### To install AWS.Tools on Windows using the Install-Module cmdlet\n1. Start a PowerShell session.\n\n\u003e Note:\nWe recommend that you don't run PowerShell as an administrator with elevated permissions except when required by the task at hand. This is because of the potential security risk and is inconsistent with the principle of least privilege.\n\n2. To install the modularized `AWS.Tools` package, run the following command.\n\n```PowerShell\nPS \u003e Install-Module -Name AWS.Tools.Installer\n\nUntrusted repository\nYou are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure\n you want to install the modules from 'PSGallery'?\n[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is \"N\"): y\n```\nIf you are notified that the repository is \"untrusted\", it asks you if you want to install anyway. Enter `y` to allow PowerShell to install the module. To avoid the prompt and install the module without trusting the repository, you can run the command with the `-Force` parameter.\n\n```PowerShell\nPS \u003e Install-Module -Name AWS.Tools.Installer -Force\n```\nYou can now install the module for each AWS service that you want to use by using the `Install-AWSToolsModule` cmdlet. For example, the following command installs the Amazon EC2 and Amazon S3 modules. This command also installs any dependent modules that are required for the specified module to work. For example, when you install your first `AWS.Tools` service module, it also installs `AWS.Tools.Common`. This is a shared module required by all AWS service modules. It also removes older versions of the modules, and updates other modules to the same newer version.\n\n```PowerShell\nPS \u003e Install-AWSToolsModule AWS.Tools.EC2,AWS.Tools.S3 -CleanUp\n  Confirm\n  Are you sure you want to perform this action?\n  Performing the operation \"Install-AWSToolsModule\" on target \"AWS Tools version 4.0.0.0\".\n  [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is \"Y\"):\n\n  Installing module AWS.Tools.Common version 4.0.0.0\n  Installing module AWS.Tools.EC2 version 4.0.0.0\n  Installing module AWS.Tools.Glacier version 4.0.0.0\n  Installing module AWS.Tools.S3 version 4.0.0.0\n\n  Uninstalling AWS.Tools version 3.3.618.0\n  Uninstalling module AWS.Tools.Glacier\n  Uninstalling module AWS.Tools.S3\n  Uninstalling module AWS.Tools.SimpleNotificationService\n  Uninstalling module AWS.Tools.SQS\n  Uninstalling module AWS.Tools.Common\n```\n\u003e Note:\nThe `Install-AWSToolsModule` cmdlet downloads all requested modules from the `PSRepository` named `PSGallery` (https://www.powershellgallery.com/) and considers it a trusted source. Use the command `Get-PSRepository -Name PSGallery` for more information about this `PSRepository`.\n\nBy default, the previous command installs modules into the `%USERPROFILE%\\Documents\\WindowsPowerShell\\Modules `folder. To install the AWS Tools for PowerShell for all users of a computer, you must run the following command in a PowerShell session that you started as an administrator. For example, the following command installs the IAM module to the `%ProgramFiles%\\WindowsPowerShell\\Modules` folder that is accessible by all users.\n\n```PowerShell\nPS \u003e Install-AWSToolsModule AWS.Tools.IdentityManagement -Scope AllUsers\n```\nTo install other modules, run similar commands with the appropriate module names, as found in the [PowerShell Gallery](https://www.powershellgallery.com/packages?q=aws).\n\n### Install AWSPowerShell.NetCore on Windows\n\nYou can install the AWSPowerShell.NetCore on computers that are running Windows with PowerShell version 3 through 5.1, or PowerShell Core 6.0 or later.\n\nYou can install AWSPowerShell.NetCore in one of two ways\n\n- Downloading the module from [AWSPowerShell.NetCore.zip](https://sdk-for-net.amazonwebservices.com/ps/v4/latest/AWSPowerShell.NetCore.zip) and extracting it in one of the module directories. You can discover your module directories by displaying the value of the `PSModulePath` environment variable.\n\n- Installing from the PowerShell Gallery using the `Install-Module` cmdlet, as described in the following procedure.\n\n**To install AWSPowerShell.NetCore from the PowerShell Gallery using the Install-Module cmdlet**\n\nTo install the AWSPowerShell.NetCore from the PowerShell Gallery, your computer must be running PowerShell 5.0 or later, or running PowerShellGet on PowerShell 3 or later. Run the following command.\n\n```PowerShell\nPS \u003e Install-Module -name AWSPowerShell.NetCore\n```\nIf you're running PowerShell as administrator, the previous command installs AWS Tools for PowerShell for all users on the computer. If you're running PowerShell as a standard user without administrator permissions, that same command installs AWS Tools for PowerShell for only the current user.\n\nTo install for only the current user when that user has administrator permissions, run the command with the `-Scope CurrentUser` parameter set, as follows.\n\n```PowerShell\nPS \u003e Install-Module -name AWSPowerShell.NetCore -Scope CurrentUser\n```\nAlthough PowerShell 3.0 and later releases typically load modules into your PowerShell session the first time you run a cmdlet in the module, the AWSPowerShell.NetCore module is too large to support this functionality. You must instead explicitly load the AWSPowerShell.NetCore Core module into your PowerShell session by running the following command.\n\n```PowerShell\nPS \u003e Import-Module AWSPowerShell.NetCore\n```\nTo load the AWSPowerShell.NetCore module into a PowerShell session automatically, add that command to your PowerShell profile.\n\n## Clean installation of AWSPowerShell.NetCore Module\nCheck if any AWS Modules are already installed and remove them. Only a single version of a single variant of AWS Tools for PowerShell (AWSPowerShell, AWSPowerShell.NetCore or \nAWS.Tools.Common) can be imported at any time.\n\nMake sure to run these commands in an elevated PowerShell session (Run as Administrator) to ensure you have the necessary permissions for installing and uninstalling modules.\n\nList all installed AWS modules:\n\n```PowerShell\nGet-Module -Name AWS* -ListAvailable | Select-Object Name, Version, Path\n```\nRemove all installed AWS modules:\n```PowerShell\nGet-Module -Name AWS* -ListAvailable | Uninstall-Module -Force\n```\nAfter removing the existing AWS modules, you can then install the AWSPowerShell.NetCore module:\n\n```PowerShell\nInstall-Module -Name AWSPowerShell.NetCore -Force -AllowClobber\n```\n\nTo install the ImportExcel module, execute the following command:\n\n```powershell\nInstall-Module -Name ImportExcel\n```\n\nTo list the commands available in the module:\n\n```PowerShell\nGet-Command -Module AWSPowerShell.NetCore\nGet-Command Export-Excel\n```\n\nAfter the successful installation, you can use the AWSPowerShell.NetCore module in your scripts\n\n```PowerShell\n# Import Prerequisite Modules\nImport-Module AWSPowerShell.NetCore\nImport-Module ImportExcel\n\n# Your AWS-related scripts...\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheinvincibleknight%2Fpowershell-knowledge-hub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftheinvincibleknight%2Fpowershell-knowledge-hub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheinvincibleknight%2Fpowershell-knowledge-hub/lists"}