summaryrefslogtreecommitdiff
path: root/docs/commandscripting.rst
blob: 918a51a6a6cc2547dfbd262d708b7e9b2da27ab8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
.. _commandscripting:


Command scripting
=================

VyOS supports executing configuration and operational commands non-interactively from shell scripts.

To include VyOS-specific functions and aliases you need to ``source /opt/vyatta/etc/functions/script-template`` files at the top of your script.

.. code-block:: sh

  #!/bin/vbash
  source /opt/vyatta/etc/functions/script-template

  exit

Run configuration commands
--------------------------

Configuration commands are executed just like from a normal config session.

For example, if you want to disable a BGP peer on VRRP transition to backup:

.. code-block:: sh

  #!/bin/vbash
  source /opt/vyatta/etc/functions/script-template

  configure

  set protocols bgp 65536 neighbor 192.168.2.1 shutdown

  commit

  exit


Run operational commands
------------------------

Unlike a normal configuration sessions, all operational commands must be prepended with ``run``, even if you haven't created a session with configure.

.. code-block:: sh

  #!/bin/vbash
  source /opt/vyatta/etc/functions/script-template

  run show interfaces

  exit