Со страницы руководства rsync:
To give new files the destination-default permissions (while leaving existing files unchanged), make sure that the --perms option is off and use --chmod=ugo=rwX (which ensures that all non-masked bits get enabled).
Итак...
rsync --copy-links --recursive --times --group --no-perms --chmod=ugo=rwX afile afile2
... должно помочь с примерами файлов, которые вы показали.
Если исходные файлы имеют разрешения, скажем, 777...
rsync --copy-links --recursive --times --group --no-perms --chmod=ugo=rw,-X afile afile2
... удалит флаг исполняемого файла.
Просто переименовать их?
С утилитой -linux переименовать:
rename -v webapp new_webapp /tmp/user*/app/webapp
С поиском (переменной глубины):
find /tmp -depth -type d -name "webapp" -execdir mv webapp new_webapp \;
Цикл for с mv:
for path in /tmp/user*/app/
do
mv -v "$path"/webapp "$path"/new_webapp
done
Ни один из них не охватывает какие-либо особые случаи, например, что произойдет, если новое _веб-приложение уже существует (проверка ошибок/разрешение конфликтов ), веб-приложение на самом деле является точкой монтирования или символической ссылкой вместо фактического каталога или другим вещи, относящиеся к этой структуре каталогов, -которую вы разрабатываете.
Таким образом, это может быть намного сложнее, чем простое переименование, это зависит от обстоятельств.
Но если вы спрашивали об этом, из вашего вопроса не было ясности.
Это должно работать:
find /tmp -depth -type d -name webapp -exec sh -c 'mv "${0}" "${0%/webapp}/new_webapp"' {} \;