36 lines
1 KiB
Bash
Executable file
36 lines
1 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
# Usage: ./rename-plugin.sh oldname newname
|
|
# Example: ./rename-plugin.sh example mysuperplugin
|
|
|
|
set -euo pipefail
|
|
|
|
OLD_NAME="$1"
|
|
NEW_NAME="$2"
|
|
|
|
# 1. Rename files with OLD_NAME in the filename
|
|
find . -type f -name "*${OLD_NAME}*" | while read -r file; do
|
|
dir=$(dirname "$file")
|
|
base=$(basename "$file")
|
|
new_base="${base//$OLD_NAME/$NEW_NAME}"
|
|
new_path="$dir/$new_base"
|
|
mv "$file" "$new_path"
|
|
echo "Renamed file: $file -> $new_path"
|
|
done
|
|
|
|
# 2. Replace occurrences of OLD_NAME in file content
|
|
echo "Replacing content inside files..."
|
|
find . -type f -print0 | xargs -0 sed -i "s/${OLD_NAME}/${NEW_NAME}/g"
|
|
|
|
# 3. Rename directories with OLD_NAME in the path (from deepest up)
|
|
echo "Renaming directories..."
|
|
find . -depth -type d -name "*${OLD_NAME}*" | while read -r dir; do
|
|
parent=$(dirname "$dir")
|
|
base=$(basename "$dir")
|
|
new_base="${base//$OLD_NAME/$NEW_NAME}"
|
|
new_path="$parent/$new_base"
|
|
mv "$dir" "$new_path"
|
|
echo "Renamed directory: $dir -> $new_path"
|
|
done
|
|
|
|
echo "✅ All done."
|