Dell OpenManage Network Manager OpenManage Network Manager User Guide 5.2 SP1 - Page 338

Using Adaptive CLI, Using Perl in Adaptive CLI

Page 338 highlights

Using Adaptive CLI You can quickly take a set of commands or configuration file snippet from a device, copy it directly into the Script editor, mark it up, and save it as a working CLI. When using the CLI Format, The Adaptive CLI tool will prompt you to create new attributes based upon your script markup. This lets you quickly create a script and schema to create an ACLI. If you have attributes that are mainly simple String attributes, this is a very quick and automated approach. Using Perl in Adaptive CLI If you need conditional logic that goes beyond simple scripting, you can use Perl in Adaptive CLI. The example below checks to see if a String Attribute is empty (null) or not. If the String attribute (ShowCmdString) has content, the show command with ShowCmdString as a parameter goes to the device. Otherwise, the Perl script skips or excludes this statement. Embedded CLI Example: [IF ShowCmdString] Show [ShowCmdString] [ENDIF ShowCmdString] You could use the CLI format for the above example, but if you need to check attributes of other types, besides String, then you must switch to Perl. For example: Boolean myFlag equals True: if ($myFlag) { ... } Integer myInt greater than zero: Example: if ($myInt > 0) { ... } To check whether a string is a particular value-like from a valid values list entry assigned to the String attribute-then you must also use Perl. The CLI format only can test if the String exists. It cannot validate its value when populated. For example: EncapsulationType = "VLAN-CCC", "VLAN-TCC", ... You can not do this check with the CLI Format: [IF EncapsulationType = "VLAN-TCC"]. Instead, use a Perl script with a statement like this: If ($EncapsulationType eq "VLAN-TCC") 338 Introducing Actions and Adaptive CLI | Actions and Adaptive CLI

  • 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
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356
  • 357
  • 358
  • 359
  • 360
  • 361
  • 362
  • 363
  • 364
  • 365
  • 366
  • 367
  • 368
  • 369
  • 370
  • 371
  • 372
  • 373
  • 374
  • 375
  • 376
  • 377
  • 378
  • 379
  • 380
  • 381
  • 382
  • 383
  • 384

338
Introducing Actions and Adaptive CLI | Actions and Adaptive CLI
Using Adaptive CLI
You can quickly take a set of commands or configuration file snippet from a device, copy it directly
into the Script editor, mark it up, and save it as a working CLI.
When using the CLI Format, The Adaptive CLI tool will prompt you to create new attributes
based upon your script markup. This lets you quickly create a script and schema to create an ACLI.
If you have attributes that are mainly simple String attributes, this is a very quick and automated
approach.
Using Perl in Adaptive CLI
If you need conditional logic that goes beyond simple scripting, you can use Perl in Adaptive CLI.
The example below checks to see if a String Attribute is empty (null) or not. If the String attribute
(ShowCmdString
) has content, the show command with
ShowCmdString
as a parameter goes
to the device. Otherwise, the Perl script skips or excludes this statement.
Embedded CLI Example:
[IF ShowCmdString]
Show [ShowCmdString]
[ENDIF ShowCmdString]
You could use the CLI format for the above example, but if you need to check attributes of other
types, besides String, then you must switch to Perl. For example:
Boolean
myFlag
equals True:
if ($myFlag)
{
}
Integer
myInt
greater than zero:
Example:
if ($myInt > 0)
{
}
To check whether a string is a particular value—like from a valid values list entry assigned to the
String attribute—then you must also use Perl. The CLI format only can test if the String exists. It
cannot validate its value when populated. For example: EncapsulationType = “VLAN-CCC”,
“VLAN-TCC”, … You can not do this check with the CLI Format:
[IF EncapsulationType =
“VLAN-TCC”].
Instead, use a Perl script with a statement like this:
If ($EncapsulationType eq “VLAN-TCC”)