• 締切済み

TeraTermマクロの”Link macro first”解消について

TeraTermマクロを実行(TTLファイルをクリック)すると”Link macro first”と、表示されます。 TeraTermマクロを”コントロール”⇒”マクロ”から直接起動するとエラー無く実行できます。エラーの原因は、以下のとおりだと思います。 ※原因は、MACRO と Tera Term の間のリンクが確立してないため、コマンドが実行できないことです。 どのようにすれば、リンクを確立することができるのでしょうか?

みんなの回答

  • notnot
  • ベストアンサー率47% (4836/10237)
回答No.1

すでに立ち上がっているTeraTermウィンドウがあって、そこでマクロコマンドを実行したい場合は、お書きのようにそのウィンドウのメニューからマクロを起動する必要があります。 拡張子ttlをttpmacro.exeに関連づけるなどして、ttpmacro.exeで直接ttlファイルを起動する場合は、既存のTeraTermに関連づけることは出来ません。ttlファイルの中でconnectコマンドを使って新たにTeraTermプロセスを起動する必要があります。send等のコマンドは同じttlファイルの中で先にconnectで作ったTeraTermプロセスに対してだけ実行できます。

aakkiirraajp
質問者

お礼

回答ありがとうございます。 今回の質問では実はconnectやsendlnなどは利用できます。 logの取得の部分のみでエラーが出ます。 なぜ、その部分だけなのかがわからないのです。 もし、お分かりになれば追記願います。

関連するQ&A

  • Teraterm macro

    Teratermを使って仕事をしようとしています。 概要は、シリアルポートにATコマンドを送って、そのレスポンスをチェックというだけのものですが、 いかんせん、多数の対象製品があります。仕事の正確性、迅速性から、自動化したいと考えています。 (1)シリアルポートの接続 (2)ログファイルのオープン (3)ログファイルに時刻の記録 (4)ATコマンドの送出 (5)ログファイルに区切りの線を入れる (6)ログファイルのクローズ (7)シリアルポートのクローズ DOSプロンプトにて、 ttpmacro.exe test.ttl を入力して、作業を進めたいと考えます。 ここに、test.ttl は、Teratermと同じフォルダにおきます。 test.ttl------------------- connect '/c=4' pause 1 logopen "teraterm.log" 1 1 pause 1 gettime datetime '-%Y%m%d-%H%M%S' ????? sendln "AT+xxxxx" pause 1 sendln "AT+YYYY" pause 1 logwrite "-----------"#13#10 logclose disconnect pause ------------------------- サジェスチョンをいただきたいのは; 1.時刻(datetime )を如何にすれば、ログに残すことができるのか? 2.pauseは、sendlnの後には、確実に必要ですが、他の部分は、まだ、チェックしていません。 絶対に不要と言う箇所をサジェスチョン願います。 3.マクロの終了後、Teratermのウィンドウが残ったままになってしまいます。   2回上記(ttpmacro.exe test.ttl)を実行させると、2つのTeratermウィンドウが残ってしまいます。   マクロ終了後、如何にして、ウィンドウをクローズさせることができますか? 4.その他、期待しないコード等が、ログに残されてしまいます。 送出したコマンド、受け取ったレスポンス以外をログに残さないことは可能でしょうか? 以上、宜しくお願いいたします。

  • TeraTermでマクロを設定する方法

    マクロの設定方法を教えてください。 ●●.ttlファイルは作成済み(SWへのlogin) TeraTermでプロパティ⇒リンク先 termpro.exe ●●.ttl と追加 Teraterm実行するも、うまくできません。 何が要因でしょうか? Teratermマクロ初心者で基本的すぎる質問ですが、ご教授お願い致します。

  • teratermマクロをVBAで実行

    teratermマクロについてご教示願います。 teratermマクロを組んで、Linuxサーバにログインして処理をする.ttlファイルを作成しようと思っています。 その.ttlファイルを、VBAのプログラムから実行することは可能でしょうか? やりたいことは、EXCELのシート上にある「実行」ボタンを押下すると、VBAからteratermマクロが実行される、という処理です。 可能かどうか教えてください。また、もしご存じであればその際の VBAの組み方も同時にご教示いただければと思います。 よろしくお願いいたします。

  • teratermの自動ログインについて

    ttlファイルを実行したときにteratermから自動で該当するIPアドレスの機器(ルータやSW)にログインする方法を知りたいです。 具体的には 複数の機器に対して設定を行う際に 事前に作成したttlファイルにIPアドレスを書き込んでおいて ttlファイルをteratermとリンク付けをし、 ttlファイルをダブルクリックすれば teratermが起動し、該当の機器に対してマクロを実行するといったことです。 方法わかる方いらっしゃったら教えてください。

  • TeraTermのマクロについて

    コマンドラインからTeraTermを起動し、 マクロを実行したのですが、 マクロを実行したときにダイアログを表示されてしまいます。 このマクロ実行中のダイアログを非表示にするにはどうしたら良いのでしょうか?

  • 一つのTeratermのマクロで複数のTeratermのウィンドウを立ち上げることはできますか?

    複数のサーバにteratermでログインし、同時に作業しているのですが、一つ一つteratermを起動しているのですが、大変です。 そこで、ワンクリックで全てのタームを起動させたいと思っています。 Windowsのbatファイルからteratermマクロを呼び出すという方法はできそうです。ただ、teratermのマクロだけでできればより使い勝手がよさそうだと思い質問させて頂いております。 宜しくお願い致します。

  • teratermマクロ でSQL?

    teratermマクロでLinuxサーバにログインして、 処理を実行し最終的にはファイルをはき出させる、という プログラミングをしたいと思っています。 そこで質問なのですが、「teratermマクロを使って、 Linuxサーバ上のデータベースにアクセスし、 SQLの命令を実行する」ということは可能でしょうか? teratermマクロのsendlnコマンドでSQLの実行が 可能かどうかを知りたいです。 ご存じの方いらっしゃいましたらよろしくお願いします。

  • Teraterm 「マクロ停止」状態になった場合

    Teraterm 「マクロ停止」状態になった場合、次のマクロに進むにはどうしたら よいでしょうか。(タスクスケージュールにて一括ログ取得をしています) バッチにて「c:\list.txt 」に「aaa.ttl 、bbb.ttl、ccc.ttl」のような ログを取得するマクロを記載しています。 途中で「マクロ停止」状態になった場合、次のマクロに進む事なく 一括ログ取得マクロが停止してしまいます。 下記、バッチにてなります。 --------------------------------- @echo off set macro="C:\Program Files (x86)\teraterm" cd %macro% for /f %%i in do (c:\list.txt) ttermpro.exe %%i exit ------------------------------------------ ---------------------------------

  • teraterm の文字色の変更について

    teraterm の文字色の変更について Tera Term varsion4.66を使用しております。 [設定]→[ウィンドウ]で文字色の変更は出来るのですが、"ls"コマンドで表示されるディレクトリの文字色の変更が出来ません。TERATERM.INIのそれらしき部分を編集しても出来なかったので、ご存じの方はご教授下さい。m(_ _)m

  • teratermマクロでやりたいこと

    現在teratermマクロを作成しています。 linuxでディレクトリを移動する際のコマンドについて質問です。 やりたいことは以下です。 (1)自動的にsshログイン ↓ (2)ミドルウェア停止 ↓ (3)指定のディレクトリに移動 ↓ (4)ファイルコピーしたり色々コマンドを連続して行う この(3)の部分が上手く出来なくて… (1)(2)(4)の部分は作成したのですが、指定のディレクトリに移動させる方法がわかりません。 指定のディレクトリは以下です。 home/hogeフォルダの配下に以下のフォルダがあります。 ・forder20150111 ・forder20150112 ・forder20150113 上記の全てのフォルダ内にXXXXというフォルダがあります。 移動したいフォルダは「本日の日付で終わっている」フォルダの配下にあるXXXXです。 文言わかりにくかもですが、2015/01/13にマクロを実行した場合、"forder20150113"に配下にあるXXXXフォルダに移動したいです。 更新日などは少しばらつく可能性があるので、あくまでファイルの日付で移動させるフォルダを判断させようとしています。 teratermマクロだけでこのようなことは出来るのでしょうか? シェルスクリプトなども今現在勉強中でまだまだわからないことが多く… わかれば教えていただきたいです… 一応以下のようなことも考えたのですがどう書いていいかわからず… (1)普通にcdでhogeフォルダまで移動するコマンドをマクロに記載 ↓ (2)自分でフォルダを選択してenter押下 ↓ (3)自動でマクロの処理を実行する みたいなことですかね… 他にいい案などあれば教えていただけるとありがたいです。 宜しくお願い致します。