Я пытаюсь перенести некоторые скрипты jenkins bash из Ubuntu в OS X. В Linux (и я думаю, что это изначально GNU) есть опция --reference, которая позволяет копировать режим из эталонного файла. Я ищу эквивалентный код для OS X, желательно без установки дополнительных пакетов. Еще лучше было бы кроссплатформенное решение.
Бетонный фрагмент:
# expand all the templates
find "$OUTPUT_PATH" -name "*.template" | while read FILE ; do
sed \
-e "s/%{NAME}/$OPTION_NAME/g" \
-e "s/%{TITLE}/$OPTION_TITLE/g" \
-e "s/%{VERSION}/$OPTION_VERSION/g" \
-e "s/%{WHEN}/$OPTION_WHEN/g" \
"$FILE" > "${FILE%.*}"
chmod --reference="$FILE" "${FILE%.*}"
rm -f "$FILE"
done
[править] Комбинация stat -r с сохранением режима файла является правильной комбинацией, stat -c не существует в OS X