Cisco 사용자를 위한 Tcl 바이트 코드 작성 및 실행

4501 단어 시스코Tcleem
다음 기사에서는 Cisco 장치에서 Tcl 스크립트 실행 예를 소개했습니다.
Cisco IOS EEM을 사용하여 Tcl 스크립트 실행

Tcl 스크립트는 편리하고 좋지만 내용이 둥글게 보이기 때문에 경우에 따라서는 곤란한 분도 있을까 생각합니다. 따라서 주로 Tcl 스크립트의 논리를 숨기기 위해 (Tcl 스크립트를 컴파일 한) 바이트 코드 실행도 지원됩니다.

손쉽게 바이트 코드를 작성하고 실행하는 방법을 소개합니다. OS는 Windows10을 가정합니다.
다음 사이트에서 tclpro141.exe를 다운로드하여 설치합니다. 클릭, 클릭으로 OK입니다.

htp://tcl. tk / ftp / tclp / tw / d / tclp 141. 네
via htp://tcl. tk / 그 f와 / tclp / 에이 / 1.4. HTML





스크린 샷에서는 YES를 선택하지만 여기에서는 NO를 선택합니다. (라이센스는 나중에 활성화됩니다)


여러가지 설치되어 있지만, bin 안에 있는 procomp.exe를 사용합니다. 그 전에는 이전에 건너뛴 라이센스를 활성화해야 합니다.


※라이센스 활성화를 하지 않고 실행하면, License Manager로 활성화해 주세요, 라고 촉구됩니다.
C:\Program Files (x86)\TclPro1.4\win32-ix86\bin>procomp.exe C:\Users\kazum\Desktop\a.tcl
TclPro Compiler -- Version 1.4.1
Copyright (C) Ajuba Solutions 1998-2017. All rights reserved.

Welcome to TclPro Compiler, and thank you for using TclPro 1.4.1.
Your license key or the name of a Ajuba Solutions License Server must
be entered to continue.  Please start TclPro License Manager, enter
the appropriate information when prompted, and then restart TclPro
Compiler.

시작 메뉴에서 TclPro License Manager를 실행합니다.


여기에 라이센스 키가 필요하지만 Ajuba Solutions는 이미 존재하지 않으며 사이트도 없습니다. 라이센스 키는 무료로 배포되며 여기에서 사용할 수 있습니다.

ㅡㅡㅡㅡ tcl. tk/365

TclPro (Tcl/Tk) Key
1.2 8.0.5 1K14-2207-0H34-1U24-R8ZJ
1.3 8.2.0 1V45-2209-1G37-1U35-R8Y6
1.4.1 8.3.2 1094-320C-1G38-2U24-P8YY

이 키와 적절한 사용자 이름을 입력하십시오.



이제 procomp.exe를 사용할 수 있습니다. 다음과 같이 실행하면 바탕 화면에 test.tbc가 생성되었습니다.
C:\Program Files (x86)\TclPro1.4\win32-ix86\bin>procomp.exe C:\Users\kazum\Desktop\test.tcl
TclPro Compiler -- Version 1.4.1
Copyright (C) Ajuba Solutions 1998-2017. All rights reserved.
This product is registered to: kikuta

그리고는, Cisco IOS EEM을 사용하여 Tcl 스크립트 실행 (을)를 참고로, 라우터에 전송해, 실행합니다. 덧붙여서 내용은 이하와 같이 보이지 않게 되어 있는 것을 알 수 있습니다.

IOS
C4331-02#show bootflash: | i .tbc
 31        611 Mar 09 2017 01:48:39 +00:00 /bootflash/test.tbc
C4331-02#
C4331-02#more bootflash:test.tbc
# TclPro::Compiler::Include

if {[catch {package require tbcload 1.3} err] == 1} {
    error "The TclPro ByteCode Loader is not available or does not support the correct version"
}
tbcload::bceval {
TclPro ByteCode 1 0 1.3 8.3
5 0 39 10 0 0 20 0 3 5 5 -1 -1
39
)Nr<!'3E<!-l4pv)9E<!)QA9v.EW<!.Qr<!4`8s!4;tl#)'!!
5
8bgm#*!
5
Angm#'!
<snip>

Tcl 파일과 같은 방법으로 등록하고 실행합니다.

IOS
C4331-02#show run | sec event manager
event manager directory user policy "bootflash:/"
event manager policy test.tbc type user

IOS
C4331-02#event manager run test.tbc
Hello Tcl!

C4331-02#
Mar  9 03:27:44.710: %HA_EM-6-LOG: test.tbc: Hello Tcl from Syslog!
C4331-02#

실행할 수 있었습니다.

좋은 웹페이지 즐겨찾기