Ansible. Чем отличаются raw/command/shell?
raw отличается от command и shell  тем, что не выполняет дополнительную обработку выполнения команды. Эти дополнительные обработки присутствуют в почти любом модуле Ansible. Модуль raw передает команду, как есть в "сыром" виде без проверок.
Модули command и shell отличаются тем, что в модуле command команда выполняется без прохождения через оболочку /bin/sh. Поэтому переменные определенные в оболочке и перенаправления-конвееры работать не будут. Модуль shell выполняет команды через оболочку по умолчанию /bin/sh. Поэтому там будут доступны переменные оболочки и перенаправления.
command если не ошибаюсь не понимает pipe ( | ) , потому когда нужно использовать его = используется shell. Насчет raw не подскажу.