From 1d98fe69fba8243ca73da7fa0ba68907bed0845e Mon Sep 17 00:00:00 2001 From: Syndamia Date: Mon, 10 May 2021 17:23:28 +0300 Subject: Added a script that renames all of the files and folders inside the project --- tools/rename-project.sh | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100755 tools/rename-project.sh (limited to 'tools') diff --git a/tools/rename-project.sh b/tools/rename-project.sh new file mode 100755 index 0000000..eeb4e76 --- /dev/null +++ b/tools/rename-project.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +if [ -z "$1" ]; then + echo "No name supplied!" + exit +fi + +# Defaults +original_name="ExamTemplate" +new_name="$1" + +if [ ! -z "$2" ]; then + original_name="$1" + new_name="$2" +fi + +rename () { + for file in $@; do + mv $file ${file/$original_name/$new_name} + done +} + +# Rename all directories and then files +rename $(find ../ -type d -name "*$original_name*") +rename $(find ../ -type f -name "*$original_name*") + +# Rename all occurences inside files +find ../ -type f -not -path "../tools/*" -print0 | xargs -0 sed -i "s/$original_name/$new_name/g" + +# The database context is named TemplateContext by default +# A third paramter should never be given, the second check is to prevent stack overflow +# if someone wants to name their project just "Template" +if [ "$original_name" != "Template" ] && [ "$3" != "Recursive" ]; then + ./rename-project.sh "Template" $new_name "Recursive" +fi -- cgit v1.2.3