Skip to content

IOS-XE 17.09.01a の GuestShell で「?」を含むコマンドが実行出来ず…

Cisco IOS XE 隠しコマンドを楽しむ を読んで GuestShell をいじっていたのですが、最近の IOS-XE に同梱されている python3 と cli モジュールでは「?」を含むコマンドを実行するとエラーになってしまいました… 解決していないのですが、実行したスクリプトとエラー内容をメモしておきます。 環境は Catalyst 8000V 17.09.01a を利用しました。

尚、GuestShell の有効化については以前に IOS-XE で GuestShell を有効化し、外部ネットワークと通信する というメモを書いています。

サンプルスクリプト

1
2
3
import cli

results = cli.execute("show clock ?")

実行結果 (エラー)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
[guestshell@guestshell ~]$ python3 sample.py
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/cli/__init__.py", line 340, in cli
    subprocess.check_output(cmdline, stderr=subprocess.STDOUT, shell=True)
  File "/usr/lib64/python3.6/subprocess.py", line 356, in check_output
    **kwargs).stdout
  File "/usr/lib64/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command 'iosp_client -om 3 -o /tmp/.iosp_2023_01_14_10_06_39_259114_2226808460.output -i /tmp/.iosp_2023_01_14_10_06_39_259114_2226808460.cmd' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "sample.py", line 3, in <module>
    results = cli.execute("show clock ?")
  File "/usr/lib/python3.6/site-packages/cli/__init__.py", line 392, in execute
    return (cli(command, timeout))
  File "/usr/lib/python3.6/site-packages/cli/__init__.py", line 350, in cli
    raise IOSPCLIError
cli.IOSPCLIError: CLI syntax error or execution Failure