Update furry-commission-ideas-add-entry.sh to make it more interactive

This commit is contained in:
Matheus Albino
2024-05-05 17:03:55 -03:00
parent bd9c5cfc4e
commit acc45f83b2

View File

@@ -1,12 +1,98 @@
#!/bin/bash #!/bin/bash
# TODO: add interative selection of "kind of commission" for output folder
cur_dir=`pwd` cur_dir=`pwd`
furry_commission_ideas_path=/mnt/e/home/Documents/sync/gdrive-zakdragonbites/furry-commission-ideas furry_commission_ideas_path=/mnt/e/home/Documents/sync/gdrive-zakdragonbites/furry-commission-ideas
furry_commission_ideas_urls_filename="urls.txt" furry_commission_ideas_urls_filename="urls.txt"
media_url=$1
scripts_path=~/repos/cloudalb/personal-devboot/scripts/shell scripts_path=~/repos/cloudalb/personal-devboot/scripts/shell
input_media_url() {
read -p "[INFO] Please inform the media's url: " media_url
echo "$media_url"
}
media_url=`input_media_url`
while [ -z "$media_url" ]; do
media_url=`input_media_url`
done
cd $furry_commission_ideas_path cd $furry_commission_ideas_path
media_filename=`$scripts_path/gdl.sh $media_url`
media_filename=`basename $media_filename` existing_folders=($(find * -maxdepth 0 -type d))
echo "$media_filename: $media_url" >> $furry_commission_ideas_urls_filename
input_create_folder() {
read -p "[INFO] Please create one: " new_foldername
echo "$new_foldername"
}
selected_folder=''
if [ -z "${existing_folders}" ]; then
echo "[INFO] There are no folders in the 'furry-commission-ideas' folder."
new_foldername=$(input_create_folder)
while [ -z "$new_foldername" ]; do
new_foldername=$(input_create_folder)
done
mkdir "$new_foldername"
selected_folder="$new_foldername"
fi
input_create_folder() {
read -p "[INFO] Please informe a name for the new folder: " new_foldername
echo "$new_foldername"
}
input_select_folder() {
read -p "[INFO] Please inform the desired option: " selected_option
if [ "$selected_option" == 'n' ]; then
selected_folder=`input_create_folder`
while [ -z "$selected_folder" ]; do
selected_folder=`input_create_folder`
done
mkdir "$selected_folder"
else
selected_folder=${existing_folders[$selected_option]}
fi
echo "$selected_folder"
}
if [ -z "$selected_folder" ]; then
echo "[INFO] Folders:"
for ((i = 0; i < ${#existing_folders[@]}; i++)); do
foldername=${existing_folders[$i]}
echo " $i) $foldername"
done
echo " n) (create a new folder)"
printf "\n"
selected_folder=`input_select_folder`
while [ -z "$selected_folder" ]; do
selected_folder=`input_select_folder`
done
fi
cd $selected_folder
command_output=`$scripts_path/gdl.sh $media_url`
media_filenames=()
for ((i = 0; i < ${#command_output[@]}; i++)); do
filename=${command_output[$i]}
media_filenames+=$(basename "$filename")
done
for ((i = 0; i < ${#media_filenames[@]}; i++)); do
media_filename=${media_filenames[$i]}
echo "$media_filename: $media_url" >> $furry_commission_ideas_urls_filename
done