mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-05-02 01:07:36 +00:00
1.5 KiB
1.5 KiB
layout | title | description | date | sidebar | comments | sharing | footer | ha_category | logo |
---|---|---|---|---|---|---|---|---|---|
page | Shell command | Instructions how to integrate Shell commands into Home Assistant. | 2015-10-13 19:10 | true | false | true | true | Automation | home-assistant.png |
This component can expose regular shell commands as services. Services can be called from a script or in automation.
# Example configuration.yaml entry
# Exposes service shell_command.restart_pow
shell_command:
restart_pow: touch ~/.pow/restart.txt
Configuration variables:
- Alias for the command
- Command itself.
The commands can be dynamic, using templates to insert values for arguments. When using templates, shell_command runs in a more secure environment which doesn't allow any shell helpers like automatically expanding the home dir ~
or using pipe symbols to run multiple commands.
Any service data passed into the service call to activate the shell command will be available as a variable within the template.
# Apply value of a GUI slider to the shell_command
automation:
- alias: run_set_ac
trigger:
platform: state
entity_id: input_slider.ac_temperature
action:
service: shell_command.set_ac_to_slider
input_slider:
ac_temperature:
name: A/C Setting
initial: 24
min: 18
max: 32
step: 1
{% raw %}
shell_command:
set_ac_to_slider: 'irsend SEND_ONCE DELONGHI AC_{{ states.input_slider.ac_temperature.state }}_AUTO'
{% endraw %}