ミスチルの大名曲の数々が配信決定!! 31日間無料!!【PR】

Teratermを利用してCiscoなどのネットワーク機器に接続する場合に、
TelnetやSSH接続、およびConsole接続を利用しています。

そこで、

・TelnetやSSH接続した場合は、Teratermの背景色を青、文字を白
・Console接続した場合は、Teratermの背景色を黒、文字を白

と自動的に変えるにはどのような方法がありますでしょうか?
Teraterm.iniを複数作って、設定ルールから手動で選択する方法以外で
自動的に変えてくれるやり方を教えて頂けますでしょうか?

Teratermマクロを利用する場合は、そのマクロコマンドを
お教え頂けますと幸いです。

よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

接続先ごとにショートカットをつくってみては?


/Fでiniファイルを指定できます。
    • good
    • 0
この回答へのお礼

ご回答下さり誠にありがとうございました。

お礼日時:2014/12/19 12:22

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qteratarm マクロ

teratarmマクロでtelnet のマクロを作成する際に、
マクロごと違う背景色と文字色を使いたいのですが
どのように指定すればよいのでしょうか?

教えてください。

Aベストアンサー

マクロが書かれたファイルを macrofile1 と macrofile2 とします.
マクロ1のための設定を teraterm 上で行い (Setup > Window から),その内容を inifile1 に記録します (Setup > Save setup).同様に,マクロ2についても inifile2 に記録しておきます.
teraterm のショートカットを作り,そのプロパティを開きます.
リンク先には "C:\Program Files\TeraTerm\tterm.exe" とかなんとかあるはずですから,ここに引数の指定を加えます.たとえば
"C:\Program Files\TeraTerm\tterm.exe /F=inifile1 /M=macrofile1"
とすれば,inifile1 の設定でマクロ1が動きだします.
ショートカットを別に作り,そちらは
"C:\Program Files\TeraTerm\tterm.exe /F=inifile2 /M=macrofile2"
とすれば,こちらからは inifile2 の設定でマクロ2が動きます.

マクロが書かれたファイルを macrofile1 と macrofile2 とします.
マクロ1のための設定を teraterm 上で行い (Setup > Window から),その内容を inifile1 に記録します (Setup > Save setup).同様に,マクロ2についても inifile2 に記録しておきます.
teraterm のショートカットを作り,そのプロパティを開きます.
リンク先には "C:\Program Files\TeraTerm\tterm.exe" とかなんとかあるはずですから,ここに引数の指定を加えます.たとえば
"C:\Program Files\TeraTerm\tterm.exe /F=inifile1 /M=macrof...続きを読む

Qttlで戻り値を取得する方法

Teratermmacroでローカル(cygwin)に入り、サーバ(HP-UX)にリモートで入った後、
コマンドの戻り値で後の行動を操作したいのですが、うまくいきません。
わかる方、教えていただけませんか。

ざっくり以下のようなマクロを組んでいます。

----------------------------------------------------------
sendln 'ssh name@host1'

wait Prompt
sendln 'sendmsg "test"'(のようなコマンド) ←これの戻り値がほしい

if 戻り値 = 0 then
 ○○
elseif 戻り値 = 1 then
 wait Prompt
 sendln 'exit'
 wait Prompt
 sendln 'ssh name2@host2'

以下略
----------------------------------------------------------

上記の「戻り値」をどのようにすれば戻り値で判別してくれるでしょうか。
if文の条件式を $?やresultでやりましたが、どのような戻り値でも
必ず$?は0、resultは1で固定でした。

また、sendmsgとif文の間に以下のように試しましたが、失敗しました。
例1:
----------------------------------------------------------
sendln 'echo $?'
recvln

if inputstr = 0 then ←syntax errorになります。
 ○○
elseif inputstr = 1 then
----------------------------------------------------------

例2:http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1247390747参照
----------------------------------------------------------
sendln 'echo $?'
recvln
recvln

hensu=inputstr ←Type mismatch.のエラーになる。 直前にstr2intを入れたりしても駄目でした。
ちなみにsendln 'echo $?'を挟まずsendmsgの直後にrecvlnでも駄目です。

if hensu = 0 then
 ○○
elseif hensu = 1 then
----------------------------------------------------------

host1にシェルスクリプトを入れることは出来ません。

Teratermmacroでローカル(cygwin)に入り、サーバ(HP-UX)にリモートで入った後、
コマンドの戻り値で後の行動を操作したいのですが、うまくいきません。
わかる方、教えていただけませんか。

ざっくり以下のようなマクロを組んでいます。

----------------------------------------------------------
sendln 'ssh name@host1'

wait Prompt
sendln 'sendmsg "test"'(のようなコマンド) ←これの戻り値がほしい

if 戻り値 = 0 then
 ○○
elseif 戻り値 = 1 then
 wait Prompt
 sendln 'exit'
 wait Prompt
...続きを読む

Aベストアンサー

基本方針は、echo $? の出力文字をttlで受信して判定、でいいと思います。

・inputstrは文字列なので、=での比較はできません
strcompareコマンドで比較→変数resultで判定
あるいは
str2int 変数 intputstr で変数に数値化→if 変数=0 等と判定
ということになります。
http://ttssh2.sourceforge.jp/manual/ja/macro/syntax/variables.html
http://ttssh2.sourceforge.jp/manual/ja/macro/command/strcompare.html
http://ttssh2.sourceforge.jp/manual/ja/macro/command/str2int.html


・recvln1つではエコーバックの分を受け取ってしまうようです。
他の出力を受信してしまう場合もあります。
確実にやるなら、目印を付けてwaitでそこまで待つ、というのがいい思います

sendln 'echo "=== EXIT STATUS === : $?"'
wait '=== EXIT STATUS === : '
recvln


・シェルスクリプトを入れることはできなくても、複合コマンドを実行することはできるはずです。
sendln '(sendmsg "test" && echo "==== OK ====") || echo "==== NG ===="'
waitlnで待ち→resultで分岐とできます
http://ttssh2.sourceforge.jp/manual/ja/macro/command/waitln.html

基本方針は、echo $? の出力文字をttlで受信して判定、でいいと思います。

・inputstrは文字列なので、=での比較はできません
strcompareコマンドで比較→変数resultで判定
あるいは
str2int 変数 intputstr で変数に数値化→if 変数=0 等と判定
ということになります。
http://ttssh2.sourceforge.jp/manual/ja/macro/syntax/variables.html
http://ttssh2.sourceforge.jp/manual/ja/macro/command/strcompare.html
http://ttssh2.sourceforge.jp/manual/ja/macro/command/str2int.html


・recvln1つではエコーバ...続きを読む

QTeraTermのタイトルバーの表示を変更したい

「UTF-8 TeraTerm Pro with TTSSH2」を使っています。
起動時に /w オプションを使ってタイトルを指定しています。
しかし、そのタイトルはホスト名の右側に表示されてしまいます。

例えば /w=hoge とした場合、タイトルバーには
 192.0.2.0:22 - hoge
と表示されます。
これを
 hoge - 192.0.2.0:22
としたいです。(IPアドレスやポート番号は表示されなくても構わない)

理由はタスクバーの表示が分かりにくいからです。

識者の方々、ご教示願います。

Aベストアンサー

teraterm.iniの [Tera Term]セクションにある
TitleFormat=13 を TitleFormat=5 に変更すると
できますね。

Q【Teratermマクロ】文字列の一致比較について

If文を用いて、文字列同士が同じかを確かめたいのですが
If文では数字のみしか比較できないらしいということがわかりました。

Teratermの場合、他の方法などで文字列の一致を確認できないのでしょうか?

ご存知の方がいらっしゃいましたら、是非教えて下さい。

Aベストアンサー

そんなあなたに: strcompare

他にも、strmatch(要バージョン4.59以降)などあります。
詳しくは、TTLコマンドリファレンスをご覧ください。

Qシェルスクリプトでファイル内の数値文字列を数値として扱うには

失礼します。
シェルスクリプトでファイル内のテキスト(数値文字列)を取得して、それを使って計算するにはどうすれば良いでしょうか?

str:ファイル内のテキスト(数値文字列)

res=$(( $str + 1 ))

・エラー
")syntax error: invalid arithmetic operator (error token is "


よろしくお願いします。

Aベストアンサー

bashをご使用と判断して

res=$(( $str + 1 ))
ではなく、
res=$(( str + 1 ))
だと思います。

> exprもやってみたのですが、処理が遅くなるので使いません。
興味があって以下のシェルで検証してみました。

#!/bin/bash

str=1
i=0

echo 'Using $((str + 1))'
date '+%H:%M:%S.%N'

while [ $i -lt 10000 ]
do
str=$(( str + 1))
i=`expr $i + 1`
done

date '+%H:%M:%S.%N'

exit

$ ./test.sh
Using $((str + 1))
09:18:46.290418000
09:18:56.929345000
これをexprに書き換えたところ
$ ./test2.sh
Using expr
09:19:00.302748000
09:19:19.259990000

exprだと19秒ですが、$(( 演算 )) だと10秒程度なので、演算が多くなれば確かにexprは不利ですね。

bashをご使用と判断して

res=$(( $str + 1 ))
ではなく、
res=$(( str + 1 ))
だと思います。

> exprもやってみたのですが、処理が遅くなるので使いません。
興味があって以下のシェルで検証してみました。

#!/bin/bash

str=1
i=0

echo 'Using $((str + 1))'
date '+%H:%M:%S.%N'

while [ $i -lt 10000 ]
do
str=$(( str + 1))
i=`expr $i + 1`
done

date '+%H:%M:%S.%N'

exit

$ ./test.sh
Using $((str + 1))
09:18:46.290418000
09:18:56.929345000
これをe...続きを読む

Qレッドハットのバージョン確認方法

自分のサーバで使用しているREDHATのバージョン確認はどうすればいいのでしょうか?

more /etc/issue
とやっても英文しか出てきませんでした。

uname -all
でもカーネルのバージョンは出るのですが、REDHATのバージョンは出ませんでした。

Aベストアンサー

> more /etc/issue
> とやっても英文しか出てきませんでした。

その英文にはRedHatのバージョンは書いてなかったのですか?
書いていなかったとしたら、管理者により編集されている可能性
がありますね。

cat /etc/redhat-release

ではいかがでしょう?
やっぱり英文ですけど。

rpm -q redhat-release

でもいいかも

QIF関数の論理式に時刻を使いたいが・・・

 例えば宅配便の配達希望時間を羅列した表があって、「20:00以降は“夜間配達”」と戻したいとき、IF関数を使用すると思います。

 解説書によると、IFの式の条件には時刻の表示形式は使えないので「”」で囲み、「1」をかける。これで時刻表示がシリアル値になるため設定が早くなる。

とあるのですが、これだけでは意味がわからず質問させていただきました。下記の2点ほどご教示いただければ助かります。

(1)どうしてIFのの条件に時刻の表示形式は使えないのか?他の関数には使えるような気がするのですが。

(2)「”」で囲むのはなんとなくわかるとして、なぜ「1」をかけるのか。

シリアル値の知識(時刻の場合24時間を1で管理する)は一応あります。

 

Aベストアンサー

(1)IFの関数というより、数式に時刻を使用することができないのではないでしょうか?
これは想像するに、時刻表示には「:」(コロン)を使いますが関数では「:」は範囲を指定する時に使用しますよね(例:A1:A10)。ですから数式に時刻の「:」を認めると範囲指定なのか、時刻なのか、収拾がつかなくなってしまいそうです。
(2)””で囲んで1を掛ける、についてですが。
””で囲むと文字列として認識されますよね。しかし””の中が本来数値ならば1を掛けることによって、文字列ではなく数値として認識されることになります。そのために1を掛けて数式として成り立つようにするのです。

想像の部分もあり間違ってたらすいません。

Qsqlplusで表示が変なので、出力を整形したい。

いつもお世話になっています。

サーバにアクセスしてsqlplusで、
データを調べたいのですが、
出力形式が見づらくて困っています。

よくわからいのですが、
---------------------------
カラム名1
---------------------------
カラム名2
---------------------------
カラム名3
---------------------------
1の値 2の値
3の値
---------------------------
カラム名1
---------------------------
カラム名2
---------------------------
カラム名3
---------------------------

上記のように意味不明な形式で出てきます。

例えばこんな風に

select カラム1,カラム2,カラム3 from hoge;

カラム1 1の値
---------------------------
カラム2 2の値
---------------------------
カラム3 3の値

等のように分かりやすく表示できないでしょうか?

ちなみにOracle9iR2を使用しています。
sqlに関するツールは使用できないルールでして、あくまでsqlplusのコマンド上でみやすくしなければなりません。

分かりづらくですいませんが、皆さま、ご教授お願いします。

いつもお世話になっています。

サーバにアクセスしてsqlplusで、
データを調べたいのですが、
出力形式が見づらくて困っています。

よくわからいのですが、
---------------------------
カラム名1
---------------------------
カラム名2
---------------------------
カラム名3
---------------------------
1の値 2の値
3の値
---------------------------
カラム名1
---------------------------
カラム名2
---------------------------
カラム名3
-----------------------...続きを読む

Aベストアンサー

SQLPLUSを起動して、

SQL>set linesize 列数

でどうだ。

SQL>show linesize

で確認ができる。

Qポートの80と443

こちらのサービス(https://secure.logmein.com/)を利用すると、インターネットを見られるサーバーのポートの80と443が空いていればルータやファイアウォールに特段の設定なく外部からサーバーを操作できるそうですが、逆にサーバーのポートの80や443を空けることには何か危険性があるのでしょうか。

Aベストアンサー

ポート80は一般的なHTTP、ポート443はHTTPSです。
この2つのポートがあいていなければインターネット接続(WEBブラウジング)は出来ません。
ですから、ほとんどのファイアウォールでこのポートは開いています。(インターネット接続を制限している社内LANでは当然閉じていますが)

ちなみに、よく使うポートとしてはFTPで20、21、SMTP(送信メール)で25、受信メールPOP3で110あたりです。セキュリティポリシー上、この辺は制限される事も多いですが、HTTP 80、HTTPS(暗号化用)443は通常閉じません。


危険性?
WEBプロトコルを使ってFTP的なファイル転送(WebDAV)やVPN等も出来るようになっています。当然そこにはある種の危険はつきものですが、WEBブラウジングに伴う危険と大きく変わりません。ウィルス等に感染していればこの2つのポートだけでも相当危険でしょうね。

参考まで。

Qbashなどのシェル変数の値に改行を含める事は可能でしょうか?

タイトルの通りですが、通常のシェル変数の値として

 [prompt]$ aaa="bbb<改行>ccc"

のようなセットを行い、

 [prompt]$ echo $aaa
 bbb
 ccc
 [prompt]$

のような結果を得たいのですが、可能でしょうか。

Aベストアンサー

可能です.
というか,やってみたら出来ることがわかると思います.こんなところで聞くより早い.
なお,sh/bash系では改行文字は特にエスケープせずそのまま入れられます.

aaa='bbb
ccc'


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング