В качестве примера у меня есть следующая файловая структура
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]
Что я пробовал и что у меня получилось:
Надеюсь, это достаточно ясно. Пожалуйста помоги.
Это должно помочь:
find ./ -name '.acignore' | sed 's/.acignore//g' | xargs -I {} cp {}.acignore {}.gitignore
Это «./», если вы находитесь внутри каталога «c». Если вы выше, это "./c"
Моя попытка работает, но очень многословна :)
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