В сценарии удара я хочу рекурсивно показанный все подпапки произвольной папки с пользователем и владельцами группы той данной папки.
Мой подход - что-то как использование stat -c "%U %G" .
Но это возвращает только шаблон username[whitespace]groupname
Конечно, я мог просто попробовать различные инструменты для замены пробела a :
но я предпочел бы использовать более "встроенный" путь, если существует один, чтобы просто применить текущее владение к sub папкам.
chown
, как chmod
, может использовать ссылку:
chown [OPTION]... --reference=RFILE FILE...
Change the owner and/or group of each FILE to OWNER and/or GROUP. With
--reference, change the owner and group of each FILE to those of RFILE.
Так:
chown --reference=/some/folder -R /some/folder
Вы не должны на самом деле анализировать вывод для удаления пробела - Вы добавили это в своей команде! Можно просто отформатировать его, как Вам нравится (с chown
синтаксис двоеточия) во-первых:
$ stat -c "%U:%G" .
zanna:unicorns
Поэтому просто передача, что к chown
с заменой команды:
chown -R $(stat -c "%U:%G" .) .