CommandsΒΆ

The exec_cmd() method is the way to run tmsh commands like run, load, and save via the SDK. It is almost always used in conjunction with an UnnamedResource.

Example: Save the BIG-IP configuration

>>> from f5.bigip import ManagementRoot
>>> mgmt = ManagementRoot('192.168.1.1.', 'user', 'pass')
>>> mgmt.tm.sys.config.exec_cmd('save')

Example: Merge a file into the BIG-IP configuration

>>> from f5.bigip import ManagementRoot
>>> mgmt = ManagementRoot('192.168.1.1', 'user', 'pass')
>>> options = {}
>>> options['file'] = '/var/config/rest/downloads/myfile.txt'
>>> options['merge'] = True
>>> mgmt.tm.sys.config.exec_cmd('load', options=[options])

In the example above, you need to upload the file you wish to merge prior to executing this command. Also note that in version 12.1+, you will need to update the fileWhitelistPathPrefix attribute in global settings to merge files from this location.

Example: Generate a qkview file without core dumps or log files

>>> from f5.bigip import ManagementRoot
>>> mgmt = ManagementRoot('192.168.1.1', 'user', 'pass')
>>> mgmt.tm.util.qkview.exec_cmd('run', utilCmdArgs='-C --exclude all')

Example: Use the bash utility to print the host routing table

>>> from f5.bigip import ManagementRoot
>>> mgmt = ManagementRoot('192.168.1.1', 'user', 'pass')
>>> rt_table = mgmt.tm.util.bash.exec_cmd('run', utilCmdArgs='')rt = mgmt.tm.util.bash.exec_cmd('run', utilCmdArgs='-c "netstat -rn"')
>>> print rt.commandResult
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.10.10.1      0.0.0.0         UG        0 0          0 vlan10
10.0.2.0        0.0.0.0         255.255.255.0   U         0 0          0 mgmt
10.10.10.0      0.0.0.0         255.255.255.0   U         0 0          0 vlan10
127.1.1.0       0.0.0.0         255.255.255.0   U         0 0          0 tmm
127.7.0.0       127.1.1.253     255.255.0.0     UG        0 0          0 tmm
127.20.0.0      0.0.0.0         255.255.0.0     U         0 0          0 tmm_bp
192.168.102.0   0.0.0.0         255.255.255.0   U         0 0          0 vlan102
192.168.103.0   0.0.0.0         255.255.255.0   U         0 0          0 vlan103