ao-mud is a spellbook of well-commented atomic bash scripts that each do one thing. we are building semantic building blocks for an autonomously-evolving digital spellcasting language.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1.5 KiB

#!/bin/bash
# The Tome Fusion Spell
#
# This powerful spell allows you to magically bind together the scattered pages of a tome, creating a single
# cohesive text file. Simply provide the path to the folder containing the sliced pages as an argument, and the
# spell will do the rest. If you want to destroy the original pages after fusing them together, use the -d flag.
#
# Usage: ./fuse_text_file_lines.sh path/to/folder [-d]
# todo: see if we can shorten or replace this script with `cat folder/* > file.txt` which simply cats a folder of scripts together (no separators tho)
# Check that a folder path was provided as an argument
if [ "$#" -ne 1 ]; then
echo "Error: Please provide a folder path as an argument."
exit 1
fi
# Create a new text file with the same name as the folder
folder_name=$(basename "$1")
text_file="$folder_name.txt"
touch "$text_file"
# Read all the files in the folder and append their content to the text file, with a special line marking the beginning and end of each file
for file in "$1"/*; do
filename=$(basename "$file")
echo "----- $filename -----" >> "$text_file"
cat "$file" >> "$text_file"
echo "----- End of $filename -----" >> "$text_file"
done
echo "Text file created: $text_file"
# Check if the delete flag (-d) was provided as an argument
while getopts "d" opt; do
case $opt in
d)
# If the delete flag was provided, delete all the original files
for file in "$1"/*; do
rm "$file"
done
echo "Original files deleted."
;;
esac
done