**This repository provides more than 250 useful and cross-platform PowerShell scripts in the [Scripts](Scripts/) subfolder - to be used by command-line interface (CLI), for remote control (e.g. via SSH), by context menu, by voice control, by automation software like Jenkins, automatically as daily tasks, or simply to learn PowerShell. See the [PowerShell FAQ page](Docs/FAQ.md) if you need help or have any questions.**
| [play-beep.ps1](Scripts/play-beep.ps1) | Plays a beep sound | [Help](Docs/play-beep.ps1.md) |
| [play-files.ps1](Scripts/play-files.ps1) | Plays the given audio files | [Help](Docs/play-files.ps1.md) |
| [play-happy-birthday.ps1](Scripts/play-happy-birthday.ps1) | Plays the Happy Birthday song | [Help](Docs/play-happy-birthday.ps1.md) |
| [play-imperial-march.ps1](Scripts/play-imperial-march.ps1) | Plays the Imperial March (Star Wars) | [Help](Docs/play-imperial-march.ps1.md) |
| [play-jingle-bells.ps1](Scripts/play-jingle-bells.ps1) | Plays Jingle Bells | [Help](Docs/play-jingle-bells.ps1.md) |
| [play-mission-impossible.ps1](Scripts/play-mission-impossible.ps1) | Plays the Mission Impossible theme | [Help](Docs/play-mission-impossible.ps1.md) |
| [play-m3u.ps1](Scripts/play-m3u.ps1) | Plays the given playlist (M3U file format) | [Help](Docs/play-m3u.ps1.md) |
| [play-mp3.ps1](Scripts/play-mp3.ps1) | Plays the given sound file (MP3 file format) | [Help](Docs/play-mp3.ps1.md) |
| [play-super-mario.ps1](Scripts/play-super-mario.ps1) | Plays the Super Mario Intro | [Help](Docs/play-super-mario.ps1.md) |
| [play-tetris-melody.ps1](Scripts/play-tetris-melody.ps1) | Plays the Tetris melody | [Help](Docs/play-tetris-melody.ps1.md) |
| [speak-checklist.ps1](Scripts/speak-checklist.ps1) | Speaks the given checklist by text-to-speech (TTS) | [Help](Docs/speak-checklist.ps1.md) |
| [speak-countdown.ps1](Scripts/speak-countdown.ps1) | Starts a countdown by text-to-speech (TTS) | [Help](Docs/speak-countdown.ps1.md) |
| [speak-date.ps1](Scripts/speak-date.ps1) | Speaks the current date by text-to-speech (TTS) | [Help](Docs/speak-date.ps1.md) |
| [speak-english.ps1](Scripts/speak-english.ps1) | Speaks the given text with an English text-to-speech (TTS) voice | [Help](Docs/speak-english.ps1.md) |
| [speak-epub.ps1](Scripts/speak-epub.ps1) | Speaks the content of the given Epub file by text-to-speech (TTS) | [Help](Docs/speak-epub.ps1.md) |
| [speak-file.ps1](Scripts/speak-file.ps1) | Speaks the content of the given text file by text-to-speech (TTS) | [Help](Docs/speak-file.ps1.md) |
| [speak-french.ps1](Scripts/speak-french.ps1) | Speaks the given text with a French text-to-speech (TTS) voice | [Help](Docs/speak-french.ps1.md) |
| [speak-german.ps1](Scripts/speak-german.ps1) | Speaks the given text with a German text-to-speech (TTS) voice | [Help](Docs/speak-german.ps1.md) |
| [speak-italian.ps1](Scripts/speak-italian.ps1) | Speaks the given text with an Italian text-to-speech (TTS) voice | [Help](Docs/speak-italian.ps1.md) |
| [speak-joke.ps1](Scripts/speak-joke.ps1) | Speaks a random Chuck Norris joke by text-to-speech (TTS) | [Help](Docs/speak-joke.ps1.md) |
| [speak-quote.ps1](Scripts/speak-quote.ps1) | Speaks a random quote by text-to-speech (TTS) | [Help](Docs/speak-quote.ps1.md) |
| [speak-spanish.ps1](Scripts/speak-spanish.ps1) | Speaks the given text with a Spanish text-to-speech (TTS) voice | [Help](Docs/speak-spanish.ps1.md) |
| [speak-test.ps1](Scripts/speak-test.ps1) | Performs a speak test by text-to-speech (TTS) | [Help](Docs/speak-test.ps1.md) |
| [speak-text.ps1](Scripts/speak-text.ps1) | Speaks the given text by text-to-speech (TTS) | [Help](Docs/speak-text.ps1.md) |
| [speak-time.ps1](Scripts/speak-time.ps1) | Speaks the current time by text-to-speech (TTS) | [Help](Docs/speak-time.ps1.md) |
| [turn-volume-up.ps1](Scripts/turn-volume-up.ps1) | Turns the audio volume up (+10% by default) | [Help](Docs/turn-volume-up.ps1.md) |
| [turn-volume-down.ps1](Scripts/turn-volume-down.ps1) | Turns the audio volume down (-10% by default) | [Help](Docs/turn-volume-down.ps1.md) |
| [unmute-audio.ps1](Scripts/unmute-audio.ps1) | Unmutes the audio device | [Help](Docs/unmute-audio.ps1.md) |
| [voice-control.ps1](Scripts/voice-control.ps1) | Executes the PowerShell scripts by voice | [Help](Docs/voice-control.ps1.md) |
| [add-firewall-rules.ps1](Scripts/add-firewall-rules.ps1) | Adds firewall rules for the given executables (needs admin rights) | [Help](Docs/add-firewall-rules.ps1.md) |
| [check-cpu-temp.ps1](Scripts/check-cpu-temp.ps1) | Checks the CPU temperature | [Help](Docs/check-cpu-temp.ps1.md) |
| [check-dns-resolution.ps1](Scripts/check-dns-resolution.ps1) | Checks the DNS resolution with frequently used domain names| [Help](Docs/check-dns-resolution.ps1.md)|
| [check-drive-space.ps1](Scripts/check-drive-space.ps1) | Checks the given drive for free space left | [Help](Docs/check-drive-space.ps1.md) |
| [check-file-system.ps1](Scripts/check-file-system.ps1) | Checks the validity of the file system (needs admin rights) | [Help](Docs/check-file-system.ps1.md) |
| [check-health.ps1](Scripts/check-health.ps1) | Checks the system health | [Help](Docs/check-health.ps1.md) |
| [check-ping.ps1](Scripts/check-ping.ps1) | Checks the ping latency to the internet | [Help](Docs/check-ping.ps1.md) |
| [check-swap-space.ps1](Scripts/check-swap-space.ps1) | Checks the swap space for free space left | [Help](Docs/check-swap-space.ps1.md) |
| [check-windows-system-files.ps1](Scripts/check-windows-system-files.ps1) | Checks the validity of the Windows system files (needs admin rights) | [Help](Docs/check-windows-system-files.ps1.md) |
| [enable-crash-dumps.ps1](Scripts/enable-crash-dumps.ps1) | Enables the writing of crash dumps | [Help](Docs/enable-crash-dumps.ps1.md) |
| [hibernate.ps1](Scripts/hibernate.ps1) | Enables hibernate mode for the local computer (needs admin rights) | [Help](Docs/hibernate.ps1.md) |
| [list-drives.ps1](Scripts/list-drives.ps1) | Lists all drives | [Help](Docs/list-drives.ps1.md) |
| [list-network-shares.ps1](Scripts/list-network-shares.ps1) | Lists the network shares of the local computer | [Help](Docs/list-network-shares.ps1.md) |
| [list-installed-apps.ps1](Scripts/list-installed-apps.ps1) | Lists the installed Windows Store apps | [Help](Docs/list-installed-apps.ps1.md) |
| [list-installed-software.ps1](Scripts/list-installed-software.ps1) | Lists the installed software (except Windows Store apps) | [Help](Docs/list-installed-software.ps1.md)|
| [list-printers.ps1](Scripts/list-printers.ps1) | Lists all printer known to the computer | [Help](Docs/list-printers.ps1.md) |
| [list-print-jobs.ps1](Scripts/list-print-jobs.ps1) | Lists all jobs of all printers | [Help](Docs/list-print-jobs.ps1.md) |
| [list-processes.ps1](Scripts/list-processes.ps1) | Lists the local computer processes | [Help](Docs/list-processes.ps1.md) |
| [list-services.ps1](Scripts/list-services.ps1) | Lists the services on the local computer | [Help](Docs/list-services.ps1.md) |
| [list-system-info.ps1](Scripts/list-system-info.ps1) | Lists system information on the local computer | [Help](Docs/list-system-info.ps1.md) |
| [list-tasks.ps1](Scripts/list-tasks.ps1) | Lists all Windows scheduler tasks | [Help](Docs/list-tasks.ps1.md) |
| [list-timezone.ps1](Scripts/list-timezone.ps1) | Lists the current time zone details | [Help](Docs/list-timezone.ps1.md) |
| [list-timezones.ps1](Scripts/list-timezones.ps1) | Lists all time zones available | [Help](Docs/list-timezones.ps1.md) |
| [list-user-groups.ps1](Scripts/list-user-groups.ps1) | Lists the user groups on the local computer | [Help](Docs/list-user-groups.ps1.md) |
| [poweroff.ps1](Scripts/poweroff.ps1) | Halts the local computer (needs admin rights) | [Help](Docs/poweroff.ps1.md) |
| [query-smart-data.ps1](Scripts/query-smart-data.ps1) | Queries the S.M.A.R.T. data of your HDD/SSD's | [Help](Docs/query-smart-data.ps1.md) |
| [reboot.ps1](Scripts/reboot.ps1) | Reboots the local computer (needs admin rights) | [Help](Docs/reboot.ps1.md) |
| [remove-print-jobs.ps1](Scripts/remove-print-jobs.ps1) | Removes all jobs from all printers | [Help](Docs/remove-print-jobs.ps1.md) |
| [restart-network-adapters.ps1](Scripts/restart-network-adapters.ps1) | Restarts all local network adapters | [Help](Docs/restart-network-adapters.ps1.md)|
| [upgrade-ubuntu.ps1](Scripts/upgrade-ubuntu.ps1) | Upgrades Ubuntu Linux to the latest (LTS) release | [Help](Docs/upgrade-ubuntu.ps1.md) |
| [wakeup.ps1](Scripts/wakeup.ps1) | Sends a magic packet a computer to wake him up | [Help](Docs/wakeup.ps1.md) |
| [cd-desktop.ps1](Scripts/cd-desktop.ps1) | Go to the user's desktop folder | [Help](Docs/wakeup.ps1.md) |
| [cd-docs.ps1](Scripts/cd-docs.ps1) | Go to the user's documents folder | [Help](Docs/wakeup.ps1.md) |
| [cd-downloads.ps1](Scripts/cd-downloads.ps1) | Go to the user's downloads folder | [Help](Docs/wakeup.ps1.md) |
| [cd-dropbox.ps1](Scripts/cd-dropbox.ps1) | Go to the user's Dropbox folder | [Help](Docs/wakeup.ps1.md) |
| [cd-home.ps1](Scripts/cd-home.ps1) | Go to the user's home folder | [Help](Docs/wakeup.ps1.md) |
| [cd-music.ps1](Scripts/cd-music.ps1) | Go to the user's music folder | [Help](Docs/wakeup.ps1.md) |
| [cd-onedrive.ps1](Scripts/cd-onedrive.ps1) | Go to the user's OneDrive folder | [Help](Docs/wakeup.ps1.md) |
| [cd-pics.ps1](Scripts/cd-pics.ps1) | Go to the user's pictures folder | [Help](Docs/wakeup.ps1.md) |
| [cd-recycle-bin.ps1](Scripts/cd-recycle-bin.ps1) | Go to the user's recycle bin folder | [Help](Docs/wakeup.ps1.md) |
| [cd-repos.ps1](Scripts/cd-repos.ps1) | Go to the user's Git repositories folder | [Help](Docs/wakeup.ps1.md) |
| [cd-root.ps1](Scripts/cd-root.ps1) | Go to the root directory (C:\ on Windows) | [Help](Docs/wakeup.ps1.md) |
| [cd-scripts.ps1](Scripts/cd-scripts.ps1) | Go to the PowerShell Scripts folder | [Help](Docs/wakeup.ps1.md) |
| [cd-up.ps1](Scripts/cd-up.ps1) | Go one directory level up | [Help](Docs/wakeup.ps1.md) |
| [cd-up2.ps1](Scripts/cd-up2.ps1) | Go two directory levels up | [Help](Docs/wakeup.ps1.md) |
| [cd-up3.ps1](Scripts/cd-up3.ps1) | Go three directory levels up | [Help](Docs/wakeup.ps1.md) |
| [cd-up4.ps1](Scripts/cd-up4.ps1) | Go four directory levels up | [Help](Docs/wakeup.ps1.md) |
| [cd-videos.ps1](Scripts/cd-videos.ps1) | Go to the user's videos folder | [Help](Docs/wakeup.ps1.md) |
| [check-symlinks.ps1](Scripts/check-symlinks.ps1) | Checks every symlink in the given directory tree | [Help](Docs/wakeup.ps1.md) |
| [check-xml-file.ps1](Scripts/check-xml-file.ps1) | Checks the given XML file for validity | [Help](Docs/wakeup.ps1.md) |
| [clear-recycle-bin.ps1](Scripts/clear-recycle-bin.ps1) | Removes the content of the recycle bin folder (can not be undo!) | [Help](Docs/wakeup.ps1.md) |
| [copy-photos-sorted.ps1](Scripts/copy-photos-sorted.ps1) | Copies all photos sorted by year and month | [Help](Docs/wakeup.ps1.md) |
| [decrypt-file.ps1](Scripts/decrypt-file.ps1) | Encrypts the given file | [Help](Docs/wakeup.ps1.md) |
| [download-dir.ps1](Scripts/download-dir.ps1) | Downloads a directory tree from the given URL | [Help](Docs/wakeup.ps1.md) |
| [download-file.ps1](Scripts/download-file.ps1) | Downloads a file from the given URL | [Help](Docs/wakeup.ps1.md) |
| [edit.ps1](Scripts/edit.ps1) | Edits the given file with the built-in text editor | [Help](Docs/wakeup.ps1.md) |
| [encrypt-file.ps1](Scripts/encrypt-file.ps1) | Encrypts the given file | [Help](Docs/wakeup.ps1.md) |
| [inspect-exe.ps1](Scripts/inspect-exe.ps1) | Prints basic information of the given executable file | [Help](Docs/wakeup.ps1.md) |
| [list-dir.ps1](Scripts/list-dir.ps1) | Lists the directory content (formatted in columns) | [Help](Docs/wakeup.ps1.md) |
| [list-dir-tree.ps1](Scripts/list-dir-tree.ps1) | Lists the directory tree content | [Help](Docs/wakeup.ps1.md) |
| [list-empty-dirs.ps1](Scripts/list-empty-dirs.ps1) | Lists empty subfolders within the given directory tree | [Help](Docs/wakeup.ps1.md) |
| [list-empty-files.ps1](Scripts/list-empty-files.ps1) | Lists empty files within the given directory tree | [Help](Docs/wakeup.ps1.md) |
| [list-files.ps1](Scripts/list-files.ps1) | Lists all files in the given folder and also in every subfolder | [Help](Docs/wakeup.ps1.md) |
| [list-hidden-files.ps1](Scripts/list-hidden-files.ps1) | Lists hidden files within the given directory tree | [Help](Docs/wakeup.ps1.md) |
| [list-recycle-bin.ps1](Scripts/list-recycle-bin.ps1) | Lists the content of the recycle bin folder | [Help](Docs/wakeup.ps1.md) |
| [list-unused-files.ps1](Scripts/list-unused-files.ps1) | Lists unused files in a directory tree | [Help](Docs/wakeup.ps1.md) |
| [list-workdir.ps1](Scripts/list-workdir.ps1) | Lists the current working directory | [Help](Docs/wakeup.ps1.md) |
| [make-install.ps1](Scripts/make-install.ps1) | Installs built executables and libs to the installation directory | [Help](Docs/wakeup.ps1.md) |
| [MD5.ps1](Scripts/MD5.ps1) | Prints the MD5 checksum of the given file | [Help](Docs/wakeup.ps1.md) |
| [new-shortcut.ps1](Scripts/new-shortcut.ps1) | Creates a new shortcut | [Help](Docs/wakeup.ps1.md) |
| [new-symlink.ps1](Scripts/new-symlink.ps1) | Creates a new symbolic link | [Help](Docs/wakeup.ps1.md) |
| [publish-to-ipfs.ps1](Scripts/publish-to-ipfs.ps1) | Publishes the given files or directory to IPFS | [Help](Docs/wakeup.ps1.md) |
| [remove-empty-dirs.ps1](Scripts/remove-empty-dirs.ps1) | Removes empty subfolders within the given directory tree | [Help](Docs/wakeup.ps1.md) |
| [search-filename.ps1](Scripts/search-filename.ps1) | Searches the directory tree for filenames by given pattern | [Help](Docs/wakeup.ps1.md) |
| [search-files.ps1](Scripts/search-files.ps1) | Searches the given pattern in the given files | [Help](Docs/wakeup.ps1.md) |
| [SHA1.ps1](Scripts/SHA1.ps1) | Prints the SHA1 checksum of the given file | [Help](Docs/wakeup.ps1.md) |
| [SHA256.ps1](Scripts/SHA256.ps1) | Prints the SHA256 checksum of the given file | [Help](Docs/wakeup.ps1.md) |
| [upload-file.ps1](Scripts/zip-dir.ps1) | Uploads the local file to the given FTP server | [Help](Docs/wakeup.ps1.md) |
| [zip-dir.ps1](Scripts/zip-dir.ps1) | Creates a .zip archive of the given directory | [Help](Docs/wakeup.ps1.md) |
| [convert-csv2txt.ps1](Scripts/convert-csv2txt.ps1) | Converts a given .CSV file to a text file | [Help](Docs/convert-csv2txt.ps1.md) |
| [convert-mysql2csv.ps1](Scripts/convert-mysql2csv.ps1) | Converts a MySQL database table to a .CSV file | [Help](Docs/convert-mysql2csv.ps1.md) |
| [convert-ps2bat.ps1](Scripts/convert-ps2bat.ps1) | Converts a PowerShell script to a .BAT file | [Help](Docs/convert-ps2bat.ps1.md) |
| [convert-ps2md.ps1](Scripts/convert-ps2md.ps1) | Converts the comment-based help of a PowerShell script to Markdown | [Help](Docs/convert-ps2md.ps1.md) |
| [convert-sql2csv.ps1](Scripts/convert-sql2csv.ps1) | Converts a SQL database table to a .CSV file | [Help](Docs/convert-sql2csv.ps1.md) |
| [clean-repos.ps1](Scripts/clean-repos.ps1) | Cleans all Git repositories under a directory from untracked files (including submodules) | [Help](Docs/clean-repos.ps1.md) |
| [configure-git.ps1](Scripts/configure-git.ps1) | Sets up the Git user configuration | [Help](Docs/configure-git.ps1.md) |
| [fetch-repo.ps1](Scripts/fetch-repo.ps1) | Fetches updates for a Git repository (including submodules) | [Help](Docs/fetch-repo.ps1.md) |
| [fetch-repos.ps1](Scripts/fetch-repos.ps1) | Fetches updates for all Git repositories under a directory (including submodules) | [Help](Docs/fetch-repos.ps1.md)|
| [list-branches.ps1](Scripts/list-branches.ps1) | Lists all branches in a Git repository | [Help](Docs/list-branches.ps1.md) |
| [list-commits.ps1](Scripts/list-commits.ps1) | Lists all commits in a Git repository | [Help](Docs/list-commits.ps1.md) |
| [list-latest-tag.ps1](Scripts/list-latest-tag.ps1) | Lists the latest tag on the current branch in a Git repository | [Help](Docs/list-latest-tag.ps1.md) |
| [list-latest-tags.ps1](Scripts/list-latest-tags.ps1) | Lists the latests tags in all Git repositories under a directory | [Help](Docs/list-latest-tags.ps1.md) |
| [list-submodules.ps1](Scripts/list-submodules.ps1) | Lists the submodules in a Git repository | [Help](Docs/list-submodules.ps1.md) |
| [list-tags.ps1](Scripts/list-tags.ps1) | Lists all tags in a Git repository | [Help](Docs/list-tags.ps1.md) |
| [make-repo.ps1](Scripts/make-repo.ps1) | Builds a Git repository | [Help](Docs/make-repo.ps1.md) |
| [make-repos.ps1](Scripts/make-repos.ps1) | Builds all Git repositories under a directory | [Help](Docs/make-repos.ps1.md) |
| [new-branch.ps1](Scripts/new-branch.ps1) | Creates a new branch in a Git repository | [Help](Docs/new-branch.ps1.md) |
| [new-tag.ps1](Scripts/new-tag.ps1) | Creates a new tag in a Git repository | [Help](Docs/new-tag.ps1.md) |
| [pull-repo.ps1](Scripts/pull-repo.ps1) | Pulls updates for a Git repository (including submodules) | [Help](Docs/pull-repo.ps1.md) |
| [pull-repos.ps1](Scripts/pull-repos.ps1) | Pulls updates for all Git repositories under a directory (including submodules) | [Help](Docs/pull-repos.ps1.md)|
| [switch-branch.ps1](Scripts/switch-branch.ps1) | Switches the branch in a Git repository (including submodules) | [Help](Docs/switch-branch.ps1.md) |
| [sync-repo.ps1](Scripts/sync-repo.ps1) | Synchronizes a Git repository by push & pull (including submodules) | [Help](Docs/sync-repo.ps1.md) |