目次
動作確認環境
- Tera Term Version 4.104
StartLogging: ログ保存を開始する
サブルーチン
;;-----------------------------------------
;;◆StartLogging: ログ保存を開始する
;; 変数:
;; - logfolder : ログ保存先フォルダ名 ※1階層のみ対応
;; - logfilename : ログファイル名
;; - datetime_flag : 「_%Y%m%d-%H%M%S」形式の日付時刻をログファイル名に付与するかどうか
;; 1 ⇒ 日付時刻を付与する
;; 1以外 ⇒ 日付時刻を付与しない
;;-----------------------------------------
:StartLogging
loginfo logfilename_temp
if result <> -1 logclose
getdir logfilepath
ifdefined logfolder
if result > 0 then
strcompare logfolder ''
if result <> 0 then
foldersearch logfolder
if result = 0 foldercreate logfolder
sprintf2 logfilepath '%s\%s' logfilepath logfolder
endif
endif
sprintf2 logfilepath '%s\%s' logfilepath logfilename
ifdefined datetime_flag
if result > 0 then
if datetime_flag = 1 then
gettime timestr '_%Y%m%d-%H%M%S'
strconcat logfilepath timestr
endif
endif
strconcat logfilepath '.log'
logopen logfilepath 0 0
return
動作内容
- インプット変数に基づきログ保存を開始する
- Tera Term の設定でログ保存を自動で開始する設定になっている場合、まずログ保存を終了した上でログ保存を開始する
- ログ保存先フォルダはマクロファイル格納フォルダが基準となる
- ログファイルの拡張子は「.log」になる
使用変数
- インプット変数
- logfolder:
- ログ保存先フォルダ名
- 指定した場合、マクロファイル格納フォルダと同じフォルダに指定のフォルダが作成されそのフォルダ内にログファイルが保存される
- 指定しない場合、マクロファイル格納フォルダ内にログファイルが保存される
- 2階層以上のフォルダを指定することはできない
- logfilename:
- ログファイル名
- 指定しない場合「log」になる
- datetime_flag:
- 整数型の変数
- 値が「1」の場合、「_%Y%m%d-%H%M%S」形式の日付時刻をファイル名の末尾に付与する
- ファイル名例:MyRouter_20250406-202824.log
- logfolder:
- サブルーチン変数
- logfilename_temp: 現在のログ保存状況チェック時にログファイル名を保存する変数
- timestr: 日付時刻を示す文字列を格納する変数
- logfilepath: サブルーチンで保存するログファイルのパスを格納する変数
使い方
- インプット変数に値を設定した上でサブルーチンを呼び出す
; 保存先フォルダを指定しない場合
logfilename = 'MyRouter'
call StartLogging
; 保存先フォルダを指定する場合
logfolder = 'log'
logfilename = 'MyRouter'
call StartLogging
; 日付時刻をファイル名に付与する場合
logfilename = 'MyRouter'
datetime_flag = 1
call StartLogging
関連
- 基礎知識
- コマンド解説
- ログイン
- コマンド実行
- ログ保存
- ファイル・フォルダ操作
- 文字列操作
- 変数関連
- マクロのモジュール化
- テクニック
- サブルーチン
- オリジナルマクロ
【整備済み品】HP ノートパソコン 830G5/13.3型フルHD/Win 11/MS Office H&B 2019/第7世代i5-7200U 2.50GHz/メモリ 16GB/SSD 512GB/指紋リーダー/USB 3.0/WEBカメラ/初期設定済
コメント