
В качестве примера у меня есть следующая структура файла
c
-Git
-GitBranchTest
.acignore
[lots more files]
-subfolder
.acignore
[lots more files]
Я пытаюсь сделать копию всех файлов .acignore и переименовать их в .gitignore, чтобы по завершении это выглядело так
c
-Git
-GitBranchTest
.acignore
.gitignore
[lots more files]
-subfolder
.acignore
.gitignore
[lots more files]
Что я пробовал и какая ошибка у меня возникла:
Надеюсь, это достаточно ясно. Пожалуйста, помогите.
решение1
Это должно сработать:
find ./ -name '.acignore' | sed 's/.acignore//g' | xargs -I {} cp {}.acignore {}.gitignore
Это "./", если вы внутри каталога "c". Если вы выше, это "./c"
решение2
Моя попытка сработала, но она очень многословна :)
for i in $(find /c/Git/GitBranchTest -name ".*" -print | grep acignore);do
from=$i
replacement=.gitignore
to=${from/.acignore/$replacement}
echo "cp $from $to" | sh
done