FIND_RPM=find /opt/RPM/components -type d -name enum-1.1.6 -print0
вероятно, должно быть
FIND_RPM=$(find /opt/RPM/components -type d -name enum-1.1.6 -print0)
Но это не причина предупреждающего сообщения.
Вы используете -print0
с find
, который выводит нулевой байт ($'\0'
, ASCII 0) в качестве разделителя между путями, найденными find
, вместо обычной новой строки, генерируемой -print
(без нуля).
Обычно используется -print0
для отправки путей, которые могут содержать пробелы или другие пробельные символы, в xargs
или другие утилиты, которые умеют работать с путями, завершенными нуль-байтами. Это нужно для того, чтобы экзотические имена файлов в путях могли быть правильно обработаны (байт nul не может быть частью имени файла в Unix, но пробел или новая строка могут быть).
В вашем случае, я думаю, это просто вопрос изменения -print0
на -print
.
Это также дает эффект правильных путей в случае, когда найдено несколько путей. При использовании -print0
Bash убирает nul и объединяет пути.