Пишу bash-скрипт для одного специфического Linux-дистрибутива. В нем нет и не будет программы sponge, а потому невозможно через sed редактировать файлы «напрямую», и надо редактировать через промежуточный файл.
cmd="sed -r 's/$regExp/$line/' $fileName > /tmp/sed.txt"
echo "$cmd" | bash
mv -f /tmp/sed.txt $fileName
При копировании этого промежуточного файла поверх редактируемого, надо постараться установить ему владельца и права доступа такими же, какие были у исходного редактируемого файла.
Поэтому перед копированием надо запомнить владельца/группу и права доступа. Владельца/группу запомнить достаточно просто из комбинации ls и cut. Права доступа в формате "-rw-r--r--" запомнить не проблема, но их затем нужно привести либо в формат ugo, либо в числовой формат, чтобы скормить это дело команде chmod.
Вопрос: как проще всего в bash-скрипте сделать копирование владельца, группы и прав доступа с одного файла на другой?