Есть ли простой способ эффективно управлять потоком файлов без записи на диск?
Я работаю в системе для сканирования удаленных файлов на наличие вирусов. Я загружаю в виде потока и хотел бы избежать сохранения не отсканированных файлов на диск по понятным причинам.
Я могу использовать clamscan для сканирования потока, но я не уверен, как создать этот поток в командной строке. И то и другое echo
и command line
иметь возможность играть в игры с тем, что на самом деле выводится, если я сделал что-то вроде следующего:
system("echo $data | clamscan -");
Есть какие-нибудь изящные решения для достижения этого, чего мне не хватает? Очевидно, что я мог бы отфильтровать дамп файла с помощью какого-либо потокового редактора, прежде чем он попадет в clamscan, но это определенно не элегантно и подвержено ошибкам, я думаю.
1 ответ
Вы могли бы использовать popen()
, Однако у него есть свои ограничения. Что-то более сложное потребует от вас играть с вашими трубами и порождением процессов.