• ベストアンサー

tcsh の complete の使い方

hazenokiの回答

  • ベストアンサー
  • hazenoki
  • ベストアンサー率33% (21/62)
回答No.1

私も試してみましたが、うまく行きませんでした。 それで、 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 が取ってこれるので、自動設定しています。)

cherry_moon
質問者

お礼

hazenoki さん、ご回答ありがとうございます。 シェル変数のほうに :0.0 をつけるのっていい考えですね。 alias でも便利なんですが、rlogin や ftp のときと 一緒のリストが使えると便利だなぁとおもったので、 complete にこだわってました。 今気づいたことなんですが、 foreach を使えば alias でも、ディスプレイ用の変数でも 簡単に作れますね。 どうせ一回しか読まれないので多少時間がかかっても構わないし。 あと、追加質問なんですが、REMOTEHOST って多段に rlogin しているときは どうやってとってきてるんですか? rlogin するときに、環境変数がわたせるのかなぁ と漠然と思っているのですが、方法がよくわかりません。 お願いします。

関連するQ&A

  • AutoCAD LT2007で連続複写のマクロ

    AutoCAD LT2000iで使ってた連続複写のマクロがLT2007では動きません(止まらない)いいマクロを教えて下さい。 以下はLT2000iで使ってたマクロです。 これと同じものが出来たら有難いのですが。。 ^C^C$m=setenv;to;0;$(nth,$(getenv,to),select;\copy;p;;\'setenv;p0;"""$m=$(getvar,lastpoint)""";\setenv;p1;"""""""$m=$(getvar,lastpoint)""""""";setenv;to;1,userr1;non;$(getenv,p0);non;$(getenv,p1);setenv;d0;"""$m=$(getvar,userr1)""";setenv;to;2,)$(nth,$(getenv,to),,,userr1;\setenv;d0;"""$m=$(+,$(getenv,d0),$(getvar,userr1))""";ucs;z;non;$(getenv,p0);non;$(getenv,p1);copy;p;;non;@;non;@"""""""$m=$(getenv,d0),0""""""";ucs;p;setenv;to;2);^M;

  • tcsh(v6-11)で文字化けする問題

    http://www2.wbs.ne.jp/~znc/tcsh/index.htm にあるとおり[*1]、最新のtcshでは日本語が組み込まれています。 しかし上手く日本語表示が行われません。具体的には、 tcshはcdで$HOMEにcdするなどの独自のコマンド拡張が為されているため(か??)、さまざまな組み込みコマンドが存在しており[*2]ます。 この組み込みコマンドは環境変数 LANG が C(英語モード)なのか ja(日本語)なのかを判別してエラーメッセージなどを切り替えて出力しているようなのですが、僕のシステムでは"ja"にセットしてしまうと、tcshの吐き出すエラーメッセージが化けてしまいます。以下のようです。 setenv LANG ja > cd test.pl test.pl: \245\307\245\243\245\354\245\257\245\310\245\352\244\307\244\317\244\242\244\352\244\336\244\273\244\363\241\243. setenv LANG C > cd test.pl test.pl: Not a directory. 環境は solaris 5.7 (sparc) sunos4u です。 どのようにしたら良いのでしょうか?原因は何なのでしょうか? よろしくお願いします。 [*1] 「漢字表示機能,漢字編集機能及び日本語カタログがtcsh本体(tcsh-6.07.12より)に取り込まれることになりました. そのため, こちらからパッチの配布を行うことなく日本語表示・編集・日本語メッセージの表示が可能になりました」 [*2] http://www.tcsh.org:80/tcsh.html/Builtin_commands.html 例えば、cd alias where bg bye=logout などです。 組み込みである理由が機能の拡張のためと思われます。

  • C言語 RC回路

    この問題自分でやってみたんですが、 デバッグするとエラーになってしまいます。 C言語を独学で勉強しているもので、 どなたか教えてくださると助かります。 コンデンサと抵抗の回路がある. 10Vで充電されたコン デンサ(0.01F)の両極 を100Ωの抵抗でつな いだ場合,2秒後の電 圧をシミュレーション (時間の刻み幅0.0001 秒=1.0e-4)により求めなさい。 C=0.01[F], R=100[Ω] #include "stdafx.h" #include"math.h" void main() { double c,r=100,v=10; double f,h,e; long n; double l,i, di, t; c=0.01*f; h=1.0e-4; while(n<2000) { di = e * h / l; e -= i * h / c; i += di; n++; } printf ("input initial voltage [V] = "); scanf ("%lf", &e); }

  • バッチファイルの変数について

    以下のバッチファイルを作成して実行したのですが、PATH_NAMEの変数が 設定されず、ファイルコピーがされません。 どのように、コードを記載すれば良いのでしょうか。 ご教授願います。 REM コピーするファイル数を設定 SET /a FILE_NUM = 2 REM コピー元のパスを設定 SET PATH_P1=C:\Copy01.txt SET PATH_P2=C:\SAMPLE\Copy02.txt REM 上記で設定したファイルを順番にC:\TEST\へコピーする SET /a N=1 :LOOP SET /p PATH_NAME = PATH_P%N% copy %PATH_NAME% C:\TEST\ if "%N%"== "FILE_NUM " (goto EXIT) SET /a N=N+1 goto LOOP :EXIT

  • cshにてファイル名補完の設定の仕方

    Linuxのcshにてファイル名補完の仕方を教えてください。 ・bashで[TAB] ・Unixのcshで"set filec"で[ESC] はできますが、Linuxのcshで"set filec"で[ESC]では補完されません。 LinuxはRHEL3.0U6を使用しています。 宜しくお願いします。

  • 6-18 至急是非宜しくです、 高校数学の確率です

    xy平面上に点P[0],P[1],P[2],....P[n]を次のように決める まずP[0]は(0,0)とし一般にP[k](k=0,1,2,,,,n-1)が(a,b)であるとき、P[k+1]は(a+1,b)または(a+1,b+1)であり、いずれであるかは等確率(=1/2ずつ)とする 折れ線P[0]P[1]P[2],,,P[n]と2つの直線y=0,x=nが囲む図形の面積の期待値をE[n]としてE[5]を求めよ 解説 E[5]といっても平凡に考えれば2^5通りについて調べなければなりません ところが、次のように一般のE[n]を求める巧妙な解法があります P[1]が(1,0)か(1,1)かで場合を分けてE[n]をE[n-1]で表してみると E[n]=1/2・E[n-1]+1/2・(E[n-1]+n-1/2)=E[n-1]+1/2・(n-1/2) よってE[n]-n^2/4=E[n-1]-(n-1)^2/4(E[1]-1/4=0) したがってE[n]=n^2/4 よってE[5]=25/4 注 たとえば、サイコロで出る目の数の期待値は 1/2・1/3・(1+3+5)+1/2・1/3・(2+4+6)というように奇遇に分けて計算することができますが上で漸化式を立てるときも、これと同じような事をしているわけで決して''和の期待値は期待値の和''などの高級な知識を使っているわけでは有りません なお、上の結論は P[k](a,b)が平均的にはP[k+1](a+1,b+1/2)となることを意味しており納得がいきますね 以下疑問点です 解説のE[5]といっても平凡に考えると2^5通り調べなければならない の所なのですがE[5]を求める場合何故2^5通り調べることになるのですか? E[n]をE[n-1]で表すときにE[n]=1/2・E[n-1]+1/2・(E[n-1]+n-1/2)で求めているのですが 何でこの式になるのか分かりません そしてE[n]=1/2・E[n-1]+1/2・(E[n-1]+n-1/2)この式をE[n]-n^2/4=E[n-1]-(n-1)^2/4 にどうやって変形してのか分からないです (=E[1]-1/4=0)の所なのですがE[1]って何で1/4になるんですか? 後は注のサイコロの出る目の期待値が1/2・1/3・(1+3+5)+1/2・1/3・(2+4+6)になるのが分からないです なお、上の結論はP[k](a,b)が平均的にはP[k+1](a+1,b+1/2)となることを意味しており の所なのですが、何故そのような事が言えるのか分からないです

  • 少数キャリア密度について

    P(リン)を1×10^17cm^-3ドープしたn型Siについて全てのPイオン化しているとき室温における少数キャリア密度を求めよ。 (少数キャリア密度の2乗)ni^2=N_c*N_vexp(-E_g/K_BT) ですが式の中のE_gの値がわかりません どうやって出せばいいのですか?

  • XYZ平面の近似式についてご教示ください

    すみませんがお助けください。 任意の3次元座標(Xi,Yi,Zi)がn個あるとします。 Xi>0,Yi>0,Ziは正負混合です。 上記n個の座標から近似平面式Z=aX+bY+cを構成する乗数a,b,cを求めたいのですが下記理由により最小二乗法は使えません。 最小二乗法の場合は D=Σ(Zi-aXi-bYi-c)^2が最小になるa,b,cを求めることになりますが、今回求めたいa,b,cは、 各座標のdi=(Zi-aXi-bYi-c)、すなわちn個のdiについて『diの最大値-diの最小値』が最も小さくなる場合のa,b,cです。 なお『diの最大値-diの最小値』についての補足ですが diの最大値=5,diの最小値=2の場合 『diの最大値-diの最小値』は5-2=3となり、 diの最大値=5,diの最小値=-2の場合 『diの最大値-diの最小値』は5-(-2)=7となります お手数かけて恐縮ですが宜しくお願い申し上げます。

  • AUTO CAD 2008の中心線作成コマンド

    お世話になります。 LT2007からAUTO CAD2008への変更作業をしてます。 LT2007のときに重宝していたセンター線作成コマンドが動きません。 どなたか下記コマンドのどこを直せばAUTO CAD2008で動くようになるのか教えてもらえませんか? 中心線(十字) ^C^C_setenv;"YOKO";\;^C^C_setenv;"TATE";\_id;\_line;_none;@-$m=$(/,$(getenv,YOKO),2),0;_none;@$(getenv,YOKO),0;;CHANGE;L;;P;LT;CENTER;C;4;;_line;_none;@-$m=$(/,$(getenv,YOKO),2),$(/,$(getenv,TATE),2);_none;@0,-$(getenv,TATE);;_CHANGE;L;;P;LT;CENTER;C;4;;^Z^M; すみませんが、宜しくお願いします。

  • オリンパスボディー+タムロンレンズについて

    現在『OLYMPUS-PEN E-P7』を使用しています。 望遠レンズが欲しくていろいろ探したところ、TAMRONの『14-150mm F/3.5-5.8 Di III (Model C001) 』という、マイクロフォーサーズマウントのレンズを見つけました。 価格も悪くなく、これにしようか迷っているところですが、教えていただきたいのは次の2点です。 ①メーカーが異なるが、マイクロフォーサーズマウントなのでE-P7に装着することは可能か。 ②装着可能であるのならば、オリンパスボディー+タムロンレンズにする場合のメリットとデメリットは何か。 よろしくお願いします。