アプリ版:「スタンプのみでお礼する」機能のリリースについて

set hosts=(firsthost secondhost thirdhost)
comlete setenv 'C/DI/(DISPLAY)/' 'p/1/e/' 'n/DISPLAY/$hosts/:0.0/'

が思うように補完してくれません。
おそらく:をエスケープしなければいけないのでしょうが、
その仕方がわかりません。

教えてください。お願いします。

A 回答 (2件)

私も試してみましたが、うまく行きませんでした。



それで、 tcsh のマニュアルを読み直してみると、エスケープの問題じゃないようです。 「suffix は1文字で、補完に追加される」と記述されていました。ですので、複数の文字(':0.0' のように)を suffix として、補完することはできないようです。

シェル変数を設定するときに、
set hosts=(firsthost:0.0 secondhost:0.0 thirdhost:0.0)
としておいたらどうでしょうか?

ちなみに私は、alias で以下のように設定していました。
alias dp1 'setenv DISPLAY firsthost:0.0'
alias dp2 'setenv DISPLAY secondhost:0.0'
alias dp3 'setenv DISPLAY thirdhost:0.0'
こっちほうが便利だと私は思ったので。補完機能も、勝手に入りますしね。
(今は、REMOTEHOST が取ってこれるので、自動設定しています。)
    • good
    • 0
この回答へのお礼

hazenoki さん、ご回答ありがとうございます。

シェル変数のほうに :0.0 をつけるのっていい考えですね。
alias でも便利なんですが、rlogin や ftp のときと
一緒のリストが使えると便利だなぁとおもったので、
complete にこだわってました。

今気づいたことなんですが、
foreach を使えば alias でも、ディスプレイ用の変数でも
簡単に作れますね。
どうせ一回しか読まれないので多少時間がかかっても構わないし。

あと、追加質問なんですが、REMOTEHOST って多段に rlogin しているときは
どうやってとってきてるんですか?
rlogin するときに、環境変数がわたせるのかなぁ
と漠然と思っているのですが、方法がよくわかりません。
お願いします。

お礼日時:2002/01/15 23:14

遅くなりましたが、、、。



rlogin や ftp のための host の list と DISPLAY 用の host の list は微妙にずれませんか? 敢えて、別のリストを使った方が便利かもしれませんね。もちろん、リストが増えると管理が大変になりますので、どちらが得なのかは状況次第ですね。

正直言いまして、rlogin にはそんなに詳しくないので、(というか、最近は使っていないので)環境変数の件はよく知りません。昔は、多段にログインしたときには、expect というオートパイロットできるスクリプトで、強引に渡そうとしたことがあります。しかし、今考えると、やりすぎだと思います。スマートではないです。

現在の私の状況は、teraterm (TTSSH) でウインドウズから unix にログインしています。 teraterm は REMOTEHOST を設定してくれているようで、それを利用しています。

また、その UNIX から、他の remote site にログインするときも、最近は、すべて、ssh を使います。 ssh は DISPLAY を設定してくれますので、何も考えなくもよく、便利に使っています。ssh は安全性を高めるために、ちょっとトリッキーな方法で DISPLAY を設定しています。そのため、多段にログインしても問題ありません。
安全性の観点からも、ssh はお勧めです。remote site にもインストールする必要はありますけどね。

以上、とりとめもなく文章を書いたので、まとめてみます。
・できれば、ssh を使う。
→ 多段のログインでも DISPLAY は自動で設定される。
→ リモートサイトにもインストールする必要がある。
→ 安全性が高まる。

・どうしても rlogin を使わないといけないの場合。
→ alias の方法が、日々のタイプする量が減ると思います。
→ foreach で設定すると、リストが一元化できる。
→ 別々のリストの方が、余分なホスト名が complete 機能時に候補に上がらず便利。

こんな感じでしょうか。参考にしてください。
    • good
    • 0
この回答へのお礼

hazenokiさん、たびたびお呼び出ししてすいませんでした。
御礼が遅くなって申し訳ありません。

ssh よさそうですね。管理者にお願いしてみます。

結局、host のリストを作って foreach で alias を作るようにしました。

何度もご回答ありがとうございました。

お礼日時:2002/01/23 22:56

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