It includes 500+ useful cross-platform PowerShell scripts located in the 📂Scripts subfolder - for the command-line interface (CLI), for remote control via SSH, for automation (e.g. AutoHotkey or Jenkins), for context menus, for voice commands (e.g. talk2windows), automatically on startup/login/logoff/daily/shutdown/etc., or simply to learn PowerShell.
Download | Table of Scripts | FAQ | Note: the scripts support Unicode - a modern console is recommended (e.g. Windows Terminal)
| Script | Description |
|---|---|
| list-voices.ps1 | Lists the installed text-to-speech voices. Read more... |
| play-beep-sound.ps1 | Plays a short beep sound. Read more... |
| play-files.ps1 | Plays the given audio files. Read more... |
| play-happy-birthday.ps1 | Plays the Happy Birthday song. Read more... |
| play-imperial-march.ps1 | Plays the Imperial March (Star Wars). Read more... |
| play-jingle-bells.ps1 | Plays Jingle Bells. Read more... |
| play-mission-impossible.ps1 | Plays the Mission Impossible theme. Read more... |
| play-m3u.ps1 | Plays the given playlist (M3U file format). Read more... |
| play-mp3.ps1 | Plays the given sound file (MP3 file format). Read more... |
| play-super-mario.ps1 | Plays the Super Mario intro. Read more... |
| play-tetris-melody.ps1 | Plays the Tetris melody. Read more... |
| speak-checklist.ps1 | Speaks the given checklist by text-to-speech. Read more... |
| speak-countdown.ps1 | Starts a countdown by text-to-speech. Read more... |
| speak-english.ps1 | Speaks text with an English text-to-speech voice. Read more... |
| speak-epub.ps1 | Speaks the content of the given Epub file by text-to-speech. Read more... |
| speak-file.ps1 | Speaks the content of the given text file by text-to-speech. Read more... |
| speak-french.ps1 | Speaks text with a French text-to-speech voice. Read more... |
| speak-german.ps1 | Speaks text with a German text-to-speech voice. Read more... |
| speak-italian.ps1 | Speaks text with an Italian text-to-speech voice. Read more... |
| speak-spanish.ps1 | Speaks text with a Spanish text-to-speech voice. Read more... |
| speak-test.ps1 | Performs a speak test by text-to-speech. Read more... |
| speak-text.ps1 | Speaks the given text by text-to-speech. Read more... |
| tell-joke.ps1 | Tells a random joke by text-to-speech. Read more... |
| tell-quote.ps1 | Tells a random quote by text-to-speech. Read more... |
| turn-volume-down.ps1 | Turns the audio volume down. Read more... |
| turn-volume-fully-up.ps1 | Turns the audio volume fully up. Read more... |
| turn-volume-off.ps1 | Turns audio off. Read more... |
| turn-volume-on.ps1 | Turns audio on. Read more... |
| turn-volume-up.ps1 | Turns the audio volume up. Read more... |
| Script | Description |
|---|---|
| add-firewall-rules.ps1 | Adds firewall rules for executables, needs admin rights. Read more... |
| check-cpu.ps1 | Checks the CPU temperature. Read more... |
| check-dns.ps1 | Checks the DNS resolution. Read more... |
| check-drive-space.ps1 | Checks a drive for free space left. Read more... |
| check-file-system.ps1 | Checks the file system of a drive (needs admin rights). Read more... |
| check-health.ps1 | Checks the system health. Read more... |
| check-ping.ps1 | Checks the ping latency to the internet. Read more... |
| check-swap-space.ps1 | Checks the swap space for free space left. Read more... |
| check-windows-system-files.ps1 | Checks the validity of the Windows system files (needs admin rights). Read more... |
| enable-crash-dumps.ps1 | Enables the writing of crash dumps. Read more... |
| hibernate.ps1 | Hibernates the local computer immediately. Read more... |
| install-github-cli.ps1 | Installs GitHub CLI. Read more... |
| install-knot-resolver.ps1 | Installs the Knot Resolver (needs admin rights). Read more... |
| install-ssh-client.ps1 | Installs a SSH client (needs admin rights). Read more... |
| install-ssh-server.ps1 | Installs a SSH server (needs admin rights). Read more... |
| install-signal-cli.ps1 | Installs signal-cli from github.com/AsamK/signal-cli. Read more... |
| install-updates.ps1 | Installs updates (need admin rights). Read more... |
| install-wsl.ps1 | Installs Windows Subsystem for Linux (WSL), needs admin rights. Read more... |
| list-apps.ps1 | Lists the installed applications. Read more... |
| list-cli-tools.ps1 | Lists installed command-line interface (CLI) tools. Read more... |
| list-dns-servers.ps1 | Lists public DNS servers. Read more... |
| list-drives.ps1 | Lists all drives. Read more... |
| list-network-shares.ps1 | Lists all network shares of the local computer. Read more... |
| list-installed-software.ps1 | Lists the installed software. Read more... |
| list-printers.ps1 | Lists all printer known to the computer. Read more... |
| list-print-jobs.ps1 | Lists all jobs of all printers. Read more... |
| list-processes.ps1 | Lists the local computer processes. Read more... |
| list-services.ps1 | Lists the services on the local computer. Read more... |
| list-system-info.ps1 | Lists system information on the local computer. Read more... |
| list-tasks.ps1 | Lists all Windows scheduler tasks. Read more... |
| list-timezone.ps1 | Lists the current time zone details. Read more... |
| list-timezones.ps1 | Lists all time zones available. Read more... |
| list-user-groups.ps1 | Lists the user groups on the local computer. Read more... |
| poweroff.ps1 | Halts the local computer (needs admin rights). Read more... |
| query-smart-data.ps1 | Queries the S.M.A.R.T. data of your HDD/SSD's. Read more... |
| reboot.ps1 | Reboots the local computer (needs admin rights). Read more... |
| remove-print-jobs.ps1 | Removes all jobs from all printers. Read more... |
| restart-network-adapters.ps1 | Restarts all local network adapters. Read more... |
| upgrade-ubuntu.ps1 | Upgrades Ubuntu Linux to the latest (LTS) release. Read more... |
| wake-up.ps1 | Wakes up a computer using Wake-on-LAN. Read more... |
| Script | Description |
|---|---|
| close-calculator.ps1 | Closes the calculator application. Read more... |
| close-cortana.ps1 | Closes Cortana. Read more... |
| close-chrome.ps1 | Closes the Google Chrome browser. Read more... |
| close-program.ps1 | Closes the given program gracefully. Read more... |
| close-edge.ps1 | Closes the Edge browser. Read more... |
| close-file-explorer.ps1 | Closes Microsoft File Explorer. Read more... |
| close-firefox.ps1 | Closes the Firefox browser. Read more... |
| close-microsoft-store.ps1 | Closes the Microsoft Store app. Read more... |
| close-netflix.ps1 | Closes the Netflix app. Read more... |
| close-onedrive.ps1 | Closes Microsoft OneDrive. Read more... |
| close-serenade.ps1 | Closes the Serenade application. Read more... |
| close-snipping-tool.ps1 | Closes the Snipping Tool application. Read more... |
| close-spotify.ps1 | Closes Spotify. Read more... |
| close-system-settings.ps1 | Closes the System Settings window. Read more... |
| close-task-manager.ps1 | Closes the Task Manager. Read more... |
| close-thunderbird.ps1 | Closes Mozilla Thunderbird. Read more... |
| close-vlc.ps1 | Closes the VLC media player application. Read more... |
| close-windows-terminal.ps1 | Closes the Windows Terminal application. Read more... |
| enable-god-mode.ps1 | Enables the god mode (adds a new icon to the desktop). Read more... |
| install-chrome.ps1 | Installs the Google Chrome browser. Read more... |
| install-firefox.ps1 | Installs the Firefox browser. Read more... |
| list-clipboard.ps1 | Lists the contents of the clipboard. Read more... |
| new-email.ps1 | Starts the default email client to write a new email. Read more... |
| open-amazon-website.ps1 | Opens Amazon's website. Read more... |
| open-default-browser.ps1 | Launches the default Web browser. Read more... |
| open-calculator.ps1 | Starts the calculator program. Read more... |
| open-c-drive.ps1 | Opens the C: drive folder. Read more... |
| open-downloads-folders.ps1 | Opens the user's downloads folder. Read more... |
| open-dropbox-folder.ps1 | Opens the user's Dropbox folder. Read more... |
| open-edge.ps1 | Launches the Edge browser. Read more... |
| open-email-client.ps1 | Starts the default email client. Read more... |
| open-facebook-website.ps1 | Opens Facebook's website. Read more... |
| open-file-explorer.ps1 | Opens the File Explorer. Read more... |
| open-firefox.ps1 | Launches the Firefox browser. Read more... |
| open-fritz-box.ps1 | Opens FRITZ!Box's web interface. Read more... |
| open-github.ps1 | Opens GitHub's website. Read more... |
| open-google-contacts.ps1 | Opens Google Contacts. Read more... |
| open-google-earth.ps1 | Opens Google Earth. Read more... |
| open-google-mail.ps1 | Opens Google Mail. Read more... |
| open-google-maps.ps1 | Opens Google Maps. Read more... |
| open-google-news.ps1 | Opens Google News. Read more... |
| open-google-play.ps1 | Opens Google Play. Read more... |
| open-google-search.ps1 | Opens Google Search. Read more... |
| open-google-translate.ps1 | Opens Google Translate. Read more... |
| open-home-folder.ps1 | Opens the user's home folder. Read more... |
| open-music-folder.ps1 | Opens the user's music folder. Read more... |
| open-netflix.ps1 | Starts the Netflix app. Read more... |
| open-microsoft-store.ps1 | Launches the Microsoft Store app. Read more... |
| open-notepad.ps1 | Starts the Notepad app. Read more... |
| open-onedrive-folder.ps1 | Opens the user's OneDrive folder. Read more... |
| open-pictures-folder.ps1 | Opens the user's pictures folder. Read more... |
| open-recycle-bin.ps1 | Opens the user's recycle bin folder. Read more... |
| open-repos-folder.ps1 | Opens the user's Git repositories folder. Read more... |
| open-snipping-tool.ps1 | Starts the Snipping Tool. Read more... |
| open-speed-test.ps1 | Opens Cloudflare's speed test. Read more... |
| open-spotify.ps1 | Opens Spotify. Read more... |
| open-system-settings.ps1 | Opens the system settings of Windows. Read more... |
| open-task-manager.ps1 | Starts the Task Manager. Read more... |
| open-videos-folder.ps1 | Opens the user's videos folder. Read more... |
| open-windows-terminal.ps1 | Launches Windows Terminal. Read more... |
| open-wikipedia-website.ps1 | Opens Wikipedia's website. Read more... |
| open-youtube-website.ps1 | Opens YouTube's website. Read more... |
| remind-me.ps1 | Creates a scheduled task that will display a popup message. Read more... |
| save-screenshot.ps1 | Saves a single screenshot. Read more... |
| set-wallpaper.ps1 | Sets the given image as wallpaper. Read more... |
| Script | Description |
|---|---|
| cd-autostart.ps1 | Set the working directory to the user's autostart folder. Read more... |
| cd-desktop.ps1 | Set the working directory to the user's desktop folder. Read more... |
| cd-docs.ps1 | Set the working directory to the user's documents folder. Read more... |
| cd-downloads.ps1 | Set the working directory to the user's downloads folder. Read more... |
| cd-dropbox.ps1 | Set the working directory to the user's Dropbox folder. Read more... |
| cd-home.ps1 | Set the working directory to the user's home folder. Read more... |
| cd-music.ps1 | Set the working directory to the user's music folder. Read more... |
| cd-onedrive.ps1 | Set the working directory to the user's OneDrive folder. Read more... |
| cd-pics.ps1 | Set the working directory to the user's pictures folder. Read more... |
| cd-recycle-bin.ps1 | Set the working directory to the user's recycle bin folder. Read more... |
| cd-repos.ps1 | Change the working directory to the user's Git repositories folder. Read more... |
| cd-root.ps1 | Set the working directory to the root directory. Read more... |
| cd-scripts.ps1 | Set the working directory to the PowerShell Scripts folder. Read more... |
| cd-ssh.ps1 | Set the working directory to the user's SSH folder. Read more... |
| cd-up.ps1 | Set the working directory to one directory level up. Read more... |
| cd-up2.ps1 | Set the working directory to two directory levels up. Read more... |
| cd-up3.ps1 | Set the working directory to three directory levels up. Read more... |
| cd-up4.ps1 | Set the working directory to four directory levels up. Read more... |
| cd-videos.ps1 | Set the working directory to the user's videos folder. Read more... |
| check-symlinks.ps1 | Checks every symlink in a directory tree. Read more... |
| check-xml-file.ps1 | Checks the given XML file for validity. Read more... |
| clear-recycle-bin.ps1 | Removes the content of the recycle bin folder (can not be undo!). Read more... |
| copy-photos-sorted.ps1 | Copy image files sorted by year and month. Read more... |
| decrypt-file.ps1 | Decrypts the given file. Read more... |
| download-dir.ps1 | Downloads a directory tree from the given URL. Read more... |
| download-file.ps1 | Downloads a file from the given URL. Read more... |
| edit.ps1 | Edits the given file with the built-in text editor. Read more... |
| encrypt-file.ps1 | Encrypts the given file. Read more... |
| get-md5.ps1 | Prints the MD5 checksum of the given file. Read more... |
| get-sha1.ps1 | Prints the SHA1 checksum of the given file. Read more... |
| get-sha256.ps1 | Prints the SHA256 checksum of the given file. Read more... |
| inspect-exe.ps1 | Prints basic information of the given executable file. Read more... |
| list-dir-tree.ps1 | Lists the directory tree content. Read more... |
| list-empty-dirs.ps1 | Lists empty subfolders within the given directory tree. Read more... |
| list-empty-files.ps1 | Lists empty files within the given directory tree. Read more... |
| list-files.ps1 | Lists all files in the given folder and also in every subfolder. Read more... |
| list-folder.ps1 | Lists the folder content. Read more... |
| list-hidden-files.ps1 | Lists hidden files within the given directory tree. Read more... |
| list-recycle-bin.ps1 | Lists the content of the recycle bin folder. Read more... |
| list-unused-files.ps1 | Lists unused files in a directory tree. Read more... |
| list-workdir.ps1 | Lists the current working directory. Read more... |
| make-install.ps1 | Installs built executables and libs to the installation directory. Read more... |
| new-shortcut.ps1 | Creates a new shortcut file. Read more... |
| new-symlink.ps1 | Creates a new symbolic link file. Read more... |
| new-zipfile.ps1 | Creates a new .zip file from a directory. Read more... |
| publish-to-ipfs.ps1 | Publishes the given files or directory to IPFS. Read more... |
| remove-empty-dirs.ps1 | Removes empty subfolders within the given directory tree. Read more... |
| replace-in-files.ps1 | Search and replace a pattern in the given files by the replacement. Read more... |
| search-filename.ps1 | Searches the directory tree for filenames by given pattern. Read more... |
| search-files.ps1 | Searches the given pattern in the given files. Read more... |
| upload-file.ps1 | Uploads the local file to the given FTP server. Read more... |
| Script | Description |
|---|---|
| convert-csv2txt.ps1 | Converts a .CSV file to a text file. Read more... |
| convert-mysql2csv.ps1 | Converts a MySQL database table to a .CSV file. Read more... |
| convert-ps2bat.ps1 | Converts a PowerShell script to a Batch script. Read more... |
| convert-ps2md.ps1 | Converts the comment-based help of a PowerShell script to Markdown. Read more... |
| convert-sql2csv.ps1 | Converts a SQL database table to a .CSV file. Read more... |
| convert-txt2wav.ps1 | Converts text to a .WAV audio file. Read more... |
| export-to-manuals.ps1 | Exports all scripts as manuals. Read more... |
| Script | Description |
|---|---|
| build-repo.ps1 | Builds a Git repository. Read more... |
| build-repos.ps1 | Builds all Git repositories in a folder. Read more... |
| check-repo.ps1 | Checks a Git repository. Read more... |
| clean-repo.ps1 | Cleans a Git repository from untracked files. Read more... |
| clean-repos.ps1 | Cleans all Git repositories in a folder from untracked files. Read more... |
| clone-repos.ps1 | Clones well-known Git repositories. Read more... |
| configure-git.ps1 | Sets up the Git user configuration. Read more... |
| fetch-repo.ps1 | Fetches updates for a Git repository. Read more... |
| fetch-repos.ps1 | Fetches updates for all Git repositories in a folder. Read more... |
| list-branches.ps1 | Lists all branches in a Git repository. Read more... |
| list-commits.ps1 | Lists all commits in a Git repository. Read more... |
| list-latest-tag.ps1 | Lists the latest tag on the current branch in a Git repository. Read more... |
| list-latest-tags.ps1 | Lists the latests tags in all Git repositories under a directory. Read more... |
| list-repos.ps1 | Lists the Git repositories in a folder. Read more... |
| list-submodules.ps1 | Lists the submodules in a Git repository. Read more... |
| list-tags.ps1 | Lists all tags in a Git repository. Read more... |
| new-branch.ps1 | Creates a new branch in a Git repository. Read more... |
| new-tag.ps1 | Creates a new tag in a Git repository. Read more... |
| pick-commit.ps1 | Cherry-picks a Git commit into multiple branches. Read more... |
| pull-repo.ps1 | Pulls updates for a Git repository. Read more... |
| pull-repos.ps1 | Pulls updates for all Git repositories in a folder. Read more... |
| remove-tag.ps1 | Removes a tag in a Git repository. Read more... |
| switch-branch.ps1 | Switches the branch in a Git repository. Read more... |
| sync-repo.ps1 | Synchronizes a Git repository by pull & push. Read more... |
| Script | Description |
|---|---|
| daily-tasks.sh | Execute PowerShell scripts automatically as daily tasks (Linux only). Read more... |
| introduce-powershell.ps1 | Introduces PowerShell to new users. Read more... |
| list-aliases.ps1 | Lists all PowerShell aliases. Read more... |
| list-automatic-variables.ps1 | Lists the automatic variables of PowerShell. Read more... |
| list-cheat-sheet.ps1 | Lists the PowerShell cheat sheet. Read more... |
| list-cmdlets.ps1 | Lists the PowerShell cmdlets. Read more... |
| list-console-colors.ps1 | Lists all console colors. Read more... |
| list-modules.ps1 | Lists the PowerShell modules. Read more... |
| list-profiles.ps1 | Lists your PowerShell profiles. Read more... |
| list-scripts.ps1 | Lists all PowerShell scripts in this repository. Read more... |
| new-script.ps1 | Creates a new PowerShell script. Read more... |
| set-profile.ps1 | Updates your PowerShell user profile. Read more... |
| Script | Description |
|---|---|
| add-memo.ps1 | Adds the given memo text to $HOME/Memos.csv. Read more... |
| check-ipv4-address.ps1 | Checks the given IPv4 address for validity. Read more... |
| check-ipv6-address.ps1 | Checks the given IPv6 address for validity. Read more... |
| check-mac-address.ps1 | Checks the given MAC address for validity. Read more... |
| check-subnet-mask.ps1 | Checks the given subnet mask for validity. Read more... |
| check-weather.ps1 | Checks the current weather for critical values. Read more... |
| display-time.ps1 | Displays the current time for 10 seconds by default. Read more... |
| list-anagrams.ps1 | Lists all anagrams of the given word. Read more... |
| list-city-weather.ps1 | Lists the current weather of cities worldwide (west to east). Read more... |
| list-countries.ps1 | Lists details of all countries. Read more... |
| list-credits.ps1 | Shows the credits. Read more... |
| list-crypto-rates.ps1 | Lists the current crypto exchange rates. Read more... |
| list-environment-variables.ps1 | Lists all environment variables. Read more... |
| list-emojis.ps1 | Lists the emojis of Unicode 13.0. Read more... |
| list-fritzbox-calls.ps1 | Lists the FRITZ!Box calls. Read more... |
| list-fritzbox-devices.ps1 | Lists FRITZ!Box's known devices. Read more... |
| list-earthquakes.ps1 | Lists earthquakes with magnitude >= 6.0 for the last 30 days. Read more... |
| list-exchange-rates.ps1 | Lists the current exchange rates for the given currency. Read more... |
| list-memos.ps1 | Lists the memos at $HOME/Memos.csv. Read more... |
| list-mysql-tables.ps1 | Lists the MySQL server tables. Read more... |
| list-news.ps1 | Lists the latest news. Read more... |
| list-os-releases.ps1 | Lists operating system releases and download URL. Read more... |
| list-os-updates.ps1 | Lists operating system updates. Read more... |
| list-passwords.ps1 | Prints a list of random passwords. Read more... |
| list-pins.ps1 | Prints a list of random PIN's. Read more... |
| list-sql-tables.ps1 | Lists the SQL server tables. Read more... |
| list-tiobe-index.ps1 | Lists the TIOBE index of top programming languages. Read more... |
| list-weather.ps1 | Lists the hourly weather. Read more... |
| locate-city.ps1 | Prints the geographic location of the given city. Read more... |
| locate-ipaddress.ps1 | Prints the geographic location of the given IP address. Read more... |
| locate-zip-code.ps1 | Prints the geographic location of the given zip-code. Read more... |
| moon.ps1 | Prints the current moon phase. Read more... |
| new-qrcode.ps1 | Generates a new QR code image file. Read more... |
| reboot-fritzbox.ps1 | Reboots the FRITZ!box device. Read more... |
| scan-ports.ps1 | Scans the network for open/closed ports. Read more... |
| send-email.ps1 | Sends an email message. Read more... |
| send-tcp.ps1 | Sends a TCP message to the given IP address and port. Read more... |
| send-udp.ps1 | Sends a UDP datagram message to the given IP address and port. Read more... |
| set-timer.ps1 | Sets a timer for a countdown. Read more... |
| simulate-presence.ps1 | Simulates the human presence against burglars. Read more... |
| start-calibre-server.ps1 | Starts a local Calibre server. Read more... |
| start-ipfs-server.ps1 | Starts a local IPFS server. Read more... |
| switch-shelly1.ps1 | Switches a Shelly1 device in the local network. Read more... |
| translate-file.ps1 | Translates the given text file into other languages. Read more... |
| translate-files.ps1 | Translates the given text files into any supported language. Read more... |
| translate-text.ps1 | Translates the given text in English into other languages. Read more... |
| weather.ps1 | Prints the current weather forecast. Read more... |
| weather-report.ps1 | Prints the local weather report. Read more... |
| what-is.ps1 | Prints a description of the given abbreviation. Read more... |
| write-animated.ps1 | Writes animated text. Read more... |
| write-big.ps1 | Writes the given text in big letters. Read more... |
| write-blue.ps1 | Writes the given text in a blue foreground color. Read more... |
| write-braille.ps1 | Writes the given text in Braille. Read more... |
| write-calendar.ps1 | Writes the calendar (month of year). Read more... |
| write-green.ps1 | Writes the given text in a green foreground color. Read more... |
| write-joke.ps1 | Writes a random Juck Norris joke. Read more... |
| write-lowercase.ps1 | Writes the given text in lowercase letters. Read more... |
| write-marquee.ps1 | Writes the given text as marquee. Read more... |
| write-morse-code.ps1 | Writes the given text in Morse code. Read more... |
| write-motd.ps1 | Writes the message of the day (MOTD). Read more... |
| write-quote.ps1 | Writes a random quote. Read more... |
| write-red.ps1 | Writes the given text in a red foreground color. Read more... |
| write-rot13.ps1 | Encodes or decodes the given text with ROT13. Read more... |
| write-typewriter.ps1 | Writes the given text with the typewriter effect. Read more... |
| write-uppercase.ps1 | Writes the given text in uppercase letters. Read more... |
| write-vertical.ps1 | Writes the given text in vertical direction. Read more... |
Send your email feedback to: markus.fleschutz [at] gmail.com
This open source project is licensed under the CC0-1.0 license. All trademarks are the property of their respective owners.