find
принимает несколько -exec
частей к команде. Например:
find . -name "*.txt" -exec echo {} \; -exec grep banana {} \;
Обратите внимание, что в этом случае вторая команда будет выполняться только в том случае, если первая команда вернется успешно, как упомянуто @Caleb. Если вы хотите, чтобы обе команды выполнялись независимо от их успеха или неудачи, вы можете использовать эту конструкцию:
find . -name "*.txt" \( -exec echo {} \; -o -exec true \; \) -exec grep banana {} \;
Похоже, ваша версия имеет классический стиль окна (не Vista). Чтобы использовать стиль Vista, как в «ИХ ВЕРСИИ», убедитесь, что где-то в заголовках есть следующий код:
#ifdef _UNICODE
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif
#endif
Если этот код есть (а я думаю, что он должен быть там), вы должны убедиться, что вы скомпилировали версию UNICODE (с _UNICODE определено).
Подробнее о включении общих элементов управления Vista вы можете прочитать в статье MSDN .