我需要重命名指定路徑的每個子資料夾。例如我有一個這樣的目錄結構:
project/
/x
/something
/somethingElse
/x
/x.someext
/notXButTheresXInASubfolder
/something
/x
我需要將其更改為:
project/
/y
/something
/somethingElse
/y
/y.someext
/thisContainsXIntheNameButIsNotx
/something
/y
理想情況下我會用 bash 腳本來做到這一點,但我不知道如何做到這一點...
答案1
DIRS=$(find /path/to/project -type d -name "x" | sort -r)
while read R; do
test -z "$R" && continue;
B=$(dirname "$R")
mv "$R" "$B/y"
done < <(echo -en "$DIRS")