Якщо синтаксичний розбір виводу lsє небезпечним, оскільки він може зламатися на деякі фанки (пробіли,, \n...), який найкращий спосіб дізнатися кількість файлів у каталозі?
Я зазвичай покладаюся на те, findщоб уникнути цього розбору, але аналогічно find mydir | wc -lбуде порушено з тих же причин.
Я зараз працюю над Solaris, але шукаю відповідь якомога більш портативною через різні уніці та різні оболонки.
findотримуватимете кількість файлів рекурсивно (використовуйте, -maxdepth 1якщо цього не хочете. find mydir -maxdepth 1 -type f -printf \\n | wc -lПотрібно обробляти спеціальні символи в імені файлу, оскільки вони ніколи не друкуються.