![Почему строки быстрее обрабатываются в файле, чем в stdin?](https://rvso.com/image/1586947/%D0%9F%D0%BE%D1%87%D0%B5%D0%BC%D1%83%20%D1%81%D1%82%D1%80%D0%BE%D0%BA%D0%B8%20%D0%B1%D1%8B%D1%81%D1%82%D1%80%D0%B5%D0%B5%20%D0%BE%D0%B1%D1%80%D0%B0%D0%B1%D0%B0%D1%82%D1%8B%D0%B2%D0%B0%D1%8E%D1%82%D1%81%D1%8F%20%D0%B2%20%D1%84%D0%B0%D0%B9%D0%BB%D0%B5%2C%20%D1%87%D0%B5%D0%BC%20%D0%B2%20stdin%3F.png)
решение1
Это не проблема strings
, это проблема каналов в OSX.
Что бы вы ни делали, отправка данных через канал ужасно медленная, особенно если размеры чтения и записи не совпадают. Попробуйте что-нибудь вроде
cat somefile | cat | cat | cat | cat | cat | strings
чтобы получить представление о том, насколько эти трубы замедляют обработку.