mirror of
https://github.com/zrwusa/data-structure-typed.git
synced 2024-11-09 23:54:04 +00:00
30 lines
877 B
Bash
Executable file
30 lines
877 B
Bash
Executable file
#!/bin/bash
|
|
|
|
# iterate the directory to rename and clear content of files
|
|
rename_and_clear_files() {
|
|
local directory="$1"
|
|
local extension="$2"
|
|
local new_prefix="$3"
|
|
|
|
for file in "$directory"/*; do
|
|
if [ -d "$file" ]; then
|
|
rename_and_clear_files "$file" "$extension" "$new_prefix"
|
|
elif [ -f "$file" ] && [[ "$file" == *"$extension" ]]; then
|
|
filename=$(basename "$file" "$extension")
|
|
new_name="$directory/${filename}${new_prefix}${extension}"
|
|
mv "$file" "$new_name"
|
|
echo "Renamed $file to $new_name"
|
|
> "$new_name" # clear content of file
|
|
fi
|
|
done
|
|
}
|
|
|
|
# check if directory, extension and prefix were provided
|
|
if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ]; then
|
|
echo "Usage: $0 <directory> <extension> <new_prefix>"
|
|
exit 1
|
|
fi
|
|
|
|
# evoke the recursive function to rename and clear files
|
|
rename_and_clear_files "$1" "$2" "$3"
|