ignore-files.sh (787B)
1 #!/usr/bin/env bash 2 3 ignore_file=".gohugoignore" 4 project_folder="public" 5 6 if [[ $# == 1 ]]; then 7 project_folder="$1" 8 elif [[ $# == 2 ]]; then 9 ignore_file="$1" 10 project_folder="$2" 11 elif [[ $# != 0 ]]; then 12 cat <<EOF 13 Usage: 14 ignore-files.sh 15 ignore-files.sh <ignore file> <publish-folder> 16 ignore-files.sh <publish-folder> 17 EOF 18 fi 19 20 if [ ! -f "$ignore_file" ]; then 21 echo "Ignore file $ignore_file not found." 22 exit 1 23 fi 24 25 if [ ! -d "$project_folder" ]; then 26 echo "Project folder $project_folder not found." 27 exit 1 28 fi 29 30 while IFS= read -r -d $'\n' ientry; do 31 while IFS= read -r -d $'\n' fentry; do 32 echo "Ignoring $fentry..." 33 rm -rf "$fentry" 34 done < <(find "$project_folder" | sed "s|^$project_folder||" | grep "$ientry" | sed -e "s|^|$project_folder|") 35 done < <(cat "$ignore_file")