Как найти и переименовать все файлы, удалив подстроку (-git)?



@Viji

Привет всем,

вроде просто, но эти два простых скрипта не работают (не хочу использовать/устанавливать rename)

find . -type f -name "*.txt" -exec sh -c 'mv "$0" $(echo -n "${$0/-git/}")' '{}' ;

или такой

find . -type f -name "*.txt" -print0 | xargs -0 -I{} fname={} && mv "$fname" $(echo -n "${$fname/-git/}")

всем добра,
Вадим


Решения вопроса 2



@3vi1_0n3

#!/bin/bash

find . -name "*-git*.txt" | (
IFS='
'
while read oldname
do
newname=${oldname//-git}
mv "$oldname" "$newname"
done
)



3

комментария


Ответы на вопрос 0

Добавить комментарий

Ваш адрес email не будет опубликован.