A script that lists out all of the apps installed on macOS from the app store, homebrew, and elsewhere. Just copy and paste this into your terminal then press enter... go on, you can trust me😉
# Define color and formatting codes
BOLD="\033[1m"
RED="\033[31m"
ORANGE="\033[38;5;208m"
RESET="\033[0m"
clear && printf "%s\n\n" "**************************************************************"
# Download the script
curl -s -o alist.zsh https://raw.githubusercontent.com/insasquatchcountry/alist/refs/heads/main/alist.zsh
if [ $? -ne 0 ]; then
printf "${BOLD}${RED}ERROR: FAILED TO DOWNLOAD THE SCRIPT.${RESET}\n"
return
fi
# Make the script executable
chmod u+x alist.zsh
if [ $? -ne 0 ]; then
printf "${BOLD}${RED}ERROR: FAILED TO MAKE THE SCRIPT EXECUTABLE.${RESET}\n"
return
fi
# Prompt for confirmation before running the script
printf "${BOLD}The script alist.zsh has been downloaded and is ready to run.${RESET}\n"
printf "\n"
printf "${ORANGE} Do you wish to continue? (y/n): ${RESET}"
read confirmation
if [[ ! "$confirmation" =~ ^[Yy]$ ]]; then
printf "\n"
printf "Script execution canceled.\n"
printf "\n"
printf "%s\n" "**************************************************************"
return
fi
printf "\n"
printf "%s\n" "**************************************************************"
# Run the script
./alist.zsh
if [ $? -ne 0 ]; then
printf "${BOLD}${RED}ERROR: THE SCRIPT DID NOT EXECUTE SUCCESSFULLY.${RESET}\n"
return
fivia GPT-4o mini
This script automates the process of downloading, preparing, and executing the alist.zsh script from a GitHub repository. It includes error handling and user prompts for a better user experience. Below is a detailed explanation of each section of the script.
BOLD="\033[1m"
RED="\033[31m"
ORANGE="\033[38;5;208m"
RESET="\033[0m"- Purpose: This section defines ANSI escape codes for text formatting.
BOLD: Makes text bold.RED: Sets text color to red.ORANGE: Sets text color to orange (using 256-color mode).RESET: Resets text formatting to default.
curl -s -o alist.zsh https://raw.githubusercontent.com/insasquatchcountry/alist/refs/heads/main/alist.zsh
if [ $? -ne 0 ]; then
printf "${BOLD}${RED}ERROR: FAILED TO DOWNLOAD THE SCRIPT.${RESET}\n"
return
fi- Purpose: This section downloads the
alist.zshscript from the specified GitHub URL.curl -s -o alist.zsh: Usescurlto silently download the file and save it asalist.zsh.- The
ifstatement checks if the previous command was successful. If not, it prints an error message in bold red and returns from the script.
chmod u+x alist.zsh
if [ $? -ne 0 ]; then
printf "${BOLD}${RED}ERROR: FAILED TO MAKE THE SCRIPT EXECUTABLE.${RESET}\n"
return
fi- Purpose: This section changes the permissions of the downloaded script to make it executable.
chmod u+x alist.zsh: Adds execute permission for the user (owner) of the file.- The
ifstatement checks if the command was successful. If not, it prints an error message in bold red and returns from the script.
printf "${BOLD}The script alist.zsh has been downloaded and is ready to run.${RESET}\n"
printf "${ORANGE}Do you want to continue? (y/n): ${RESET}"
read confirmation
if [[ ! "$confirmation" =~ ^[Yy]$ ]]; then
printf "Script execution canceled.\n"
return
fi- Purpose: This section informs the user that the script is ready to run and prompts for confirmation.
- The first
printfstatement displays a message in bold indicating that the script is ready. - The second
printfstatement prompts the user in orange to confirm whether they want to continue. - The
readcommand captures the user's input. - The
ifstatement checks if the input is not "y" or "Y". If the user chooses not to continue, it prints a cancellation message and returns from the script.
- The first
./alist.zsh
if [ $? -ne 0 ]; then
printf "${BOLD}${RED}ERROR: THE SCRIPT DID NOT EXECUTE SUCCESSFULLY.${RESET}\n"
return
fi- Purpose: This section executes the downloaded script.
./alist.zsh: Runs the script.- The
ifstatement checks if the execution was successful. If not, it prints an error message in bold red and returns from the script.
This script provides a user-friendly way to download, prepare, and execute the alist.zsh script while incorporating error handling and user confirmation. The use of color formatting enhances the visibility of important messages, making it easier for users to understand the script's status and any issues that may arise.
(see .pdf for clickable links etc.)
