win_command – Выполнение команды на удалённом узле Windows
Описание
- Модуль
win_commandпринимает имя команды, за которым следует список аргументов, разделённых пробелами. - Данная команда будет выполнена на всех выбранных узлах. Она не будет обработана через оболочку, поэтому переменные, такие как
$env:HOME, и операции, такие как"<",">","|", и";", не будут работать (используйте модуль win_shell, если вам нужны эти возможности). - Для целевых узлов, не являющихся Windows, используйте модуль command вместо него.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| chdir путь | Установить указанный путь в качестве текущей рабочей директории перед выполнением команды. | |
| creates путь | Путь или шаблон фильтра пути; если указанный путь существует на целевом хосте, задача будет пропущена. | |
| free_form строка / обязательно | Модуль win_command принимает команду в свободном формате для выполнения.На самом деле параметра с именем 'free form' нет. Обратите внимание на примеры! | |
| removes путь | Путь или шаблон фильтра пути; если указанный путь не существует на целевом хосте, задача будет пропущена. | |
| stdin строка добавлено в 2.5 | Установить stdin команды непосредственно на указанное значение. |
Примечания
Примечание
- Если вы хотите выполнить команду через оболочку (например, используете
<,>,|, и т.д.), вам на самом деле нужен модуль win_shell. Модульwin_commandгораздо безопаснее, поскольку он не зависит от пользовательской среды. -
creates,removes, иchdirмогут быть указаны после команды. Например, если вы хотите выполнить команду только в том случае, если определённый файл не существует, используйте эту возможность.
См. также
См. также
- command – Выполнение команд на целевых узлах
- Официальная документация по модулю command.
- psexec – Выполнение команд на удалённом хосте Windows на основе модели PsExec
- Официальная документация по модулю psexec.
- raw – Выполнение низкоуровневой и грязной команды
- Официальная документация по модулю raw.
- win_psexec – Выполнение команд (удалённо) как другим (привилегированным) пользователем
- Официальная документация по модулю win_psexec.
- win_shell – Выполнение команд оболочки на целевых хостах
- Официальная документация по модулю win_shell.
Примеры
- name: Save the result of 'whoami' in 'whoami_out'
win_command: whoami
register: whoami_out
- name: Run command that only runs if folder exists and runs from a specific folder
win_command: wbadmin -backupTarget:C:\backup\
args:
chdir: C:\somedir\
creates: C:\backup\
- name: Run an executable and send data to the stdin for the executable
win_command: powershell.exe -
args:
stdin: Write-Host test
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| cmd строка | всегда | Команда, выполненная задачей Пример: rabbitmqctl join_cluster rabbit@master |
| delta строка | всегда | Время выполнения команды Пример: 0:00:00.325771 |
| end строка | всегда | Время окончания выполнения команды Пример: 2016-02-25 09:18:26.755339 |
| msg логическое значение | всегда | изменено Пример: True |
| rc целое число | всегда | Код возврата команды (0 означает успех) |
| start строка | всегда | Время начала выполнения команды Пример: 2016-02-25 09:18:26.429568 |
| stderr строка | всегда | Стандартная ошибка команды Пример: ls: cannot access foo: No such file or directory |
| stdout строка | всегда | Стандартный вывод команды Пример: Clustering node rabbit@slave1 with rabbit@master ... |
| stdout_lines список | всегда | Стандартный вывод команды, разделенный на строки Пример: ["u'Clustering node rabbit@slave1 with rabbit@master ...'"] |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается основной командой Ansible. [core]
Поддержка Red Hat
Дополнительную информацию о поддержке данного модуля Red Hat можно найти в этой статье базы знаний Red Hat.
Авторы
- Matt Davis (@nitzmahone)
Подсказка
Если вы заметили какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/win_command_module.html