• ベストアンサー

vt100端末に改行(コード)を送るには

下記ライブラリを使い、JavaでSSH接続するプログラムを作っています。vt100端末に改行つき(ターミナルエミュレータで動かした場合のEnterを押す動作)で、コマンドの文字列を送りたいのですが、どのように書けばよいのでしょうか? 例えば、 String command = "show"; で、showの後に改行コードを入れたい場合は、ダブルクォーテーションの中に、さらに何か入れなければいけないのでしょうか? とんちんかんなことを言っているかもしれませんが、よろしくお願いします。 http://www.jcraft.com/jsch/index.html

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

sshの接続相手は、shellなんだと思いますが・・ CR(キャリッジリターン)で良いと思いますよ。

netw2009
質問者

お礼

回答ありがとうございます。 私が理解しておらず、すみません…。やってみます。

関連するQ&A

  • 正規表現の置換で、カンマで区切られた語句を""と改行で分ける方法

    正規表現による置換についてお教えください。 Unixのコマンドで置換するときに、sed コマンドを使うと思います。 今、プログラムのソースコードの中に含まれている語句を取得するために、色々いじろうと思っています。 私が最もお聞きしたいのは、正規表現の書き方であることを、まずご理解ください。 ソースコードの中に、 string headline="語句1,語句2,・・・,語句n-1,語句n"; というように、 string headline= で始まっていて、 その後に " "(ダブルクォーテーションの組)で囲まれた部分が1箇所あり、 その部分に、カンマ(,)で区切られた語句がいくつもあるような行があったとき、 その " "の部分を、 "語句1", "語句2", ・・・ "語句n-1", "語句n" のように置換したいのです。 つまり、語句一つ一つをダブルクォーテーションで包んで、1行に語句が1つになるようにしたいのです。 厳密に言えば、stringとheadlineの間などに、タブや空白がいくつあるかわからないという問題なども考える必要があるかもしれません。 とりあえず私が考えたのは、 s/\(string headline="\)\([^,]\)+,\(";\)/\1\2",改行"\3/g です。 s/置換前の文字列のパターン/置換後の文字列のパターン/g となっています。 置換前のパターンで \( \) で囲まれている部分は、置換後のほうで、\1のように参照できます。 ■■でも、私の書いたものって、語句が繰り返し出現することに対応できていないように思われます。■■ 実際に、置換に改行を含めるには、正規表現をファイルの中に書いて、sedの-fオプションで読み込ませることになると思います。 string headline=" " という形をしていないものは、たとえ、" " の中がカンマで区切られていてもそれを分けません。

  • エクセルで改行したものをメモ帳に貼り付け

    10字~50字程の全角文字がランダムに入っている列があり、それを20字以上の場合は20字で改行された状態にしてメモ帳に貼り付ける必要があるのですが、何か良い方法はありませんでしょうか。 具体的には、 ------------------------------------------------------------------------ あいうえおかきくけこさしすせとたちつてとなにぬねのはひふへほまみむめもやゆよん ↓ あいうえおかきくけこさしすせとたちつてと なにぬねのはひふへほまみむめもやゆよ ん ------------------------------------------------------------------------ という状態でメモ帳に反映させたいです。 エクセルでの改行は、メモ帳にダブルクォーテーション付きで反映されてしまうため、困っています。 関数でもマクロ処理でも構いません。 最終的にメモ帳に改行したものが反映されていればOKです。 できれば、指定した範囲のセル全てそれぞれが一度で改行、メモ帳に反映されると助かります。 どなたか、力を貸してください。。

  • Alt+Enterでセル内改行された文字をVBで認識させるには?

    Excel2000です。 例えばA1に以下の様にAlt+Enterで改行された文字が書かれている時に IF文を使ってマクロを実行したい場合、???にはどう書けば良いのでしょうか? ???に、1234Alt+Enter5678 と同じとさせる書き方です。 ┌──┐ │1234│ │5678│ └──┘ Dim 認識 As String 認識 = Cells(1,1).Value IF 認識 = ??? Then ・・・・実行したいマクロ

  • Excel改行時のダブルクォーテーション

    現在いくつかの項目を入力して、 文字列を生成する自動生成ツールのような物を作っています。 具体的にはURL等を入れまして、できるのは.htaccessです。 実際に生成自体は出来るものの、これをメモ帳に張り付けると 改行関数を入れている為、例の憎きダブルクォーテーションが入ります。 改行は「&CHAR(13)&CHAR(10)&」を使っています。 普通ならCLEAN関数等で改行をなくせばそれで万事解決かと思いますが、 相手が.htaccessで融通が利かない為そうもいきません。改行が必要です…。 現在使用しているメモパッドはWin標準の物でして、 正直今後もそれ以外のソフト等を使う予定はないので、 ワードパットなら大丈夫と言うのは分かっていますが、今回は メモパッドに張り付けた場合の解決法があればご伝授頂きたく思います。 お忙しい所恐縮ですが、よろしくお願い致します。

  • 文字列の中の1文字を比較するには?

    XP,Studio.NETでC++を書いています。 文字列の中の1文字を比較したいのですがどのようにしたらいいのかわかりません。 今以下のような文字列がstring[300]に入っているとします。 「\nは改行コードです。printf("");では"から"までの文字が画面に表示されます。」 このとき、1文字ずつを取り出し、文字を比較したいのですが (iを増加) if(string[i]=='\') flag=1; //処理→次にnが来る。 if(string[i]=='"') flag=2; //処理→文字はダブルコーテーション という処理をしたいのですが、 エラー:定数が多すぎます。 エラー:定数が2行目に続いています。 と出ます。どうしたらいいのでしょうか? どなたか教えていただけると幸いです。

  • CSVファイル読み込み、書き込み時の一般的な方法

    いつもお世話になります。 下記CSVデータの場合の分割された結果を示していますが、データを分割する際、一般的には、 どのような考え方で分割するロジックを組めばよいでしょうか。 CSVファイル読み込み、書き込み時におけるルール。 (間違っている、漏れているなどありましたらご指摘頂ければと思います。) ・ダブルコーテーションで括る必要のあるデータ  以下のデータを含むデータ。   区切り文字、改行、ダブルコーテーション ・ダブルコーテーションが入るデータは、ダブルコーテーションでエスケープする  aa"bb ⇒ aa""bb   上記ルールに則ったCSVファイルの読み込み方。  123,aaaaa,ああいい,"13,55","aa""bb","ab(改行)ZZ","ああ"",いい"   ↓  データ1 123  データ2 aaaaa  データ3 ああいい  データ4 13,55  データ5 aa"bb  データ6 ab(改行)ZZ  データ7 ああ",いい    上記結果になるようにデータを分割すればいいのですが、データにダブルコーテーションがある 場合、書き込み時に付与、読み込み時に削除、という具合にデータの編集処理が入ってしまうが いいのか、何かのミスで、ダブルコーテーションがエスケープされておらず、カンマと連続で 定義されていた場合「",」、データの終わりを示してしまい、意図しない個所で分割されてしまうの ではないか、何かのミスでダブルコーテーションの始め、もしくは終わりの定義が漏れいた場合 (「・・・,"aaaa,・・・」「・・・,aaaa",・・・」など)、これも意図しない個所で分割されてしまう、 などなど、一般的にはどのようなロジックにしておけばよいのでしょうか。 そもそもロジックで全てを防ぐ事はできない、ということでしたら、事前にこれだけは決めておくべき、 というポイントがありましたら、教えて頂けると嬉しいです。 世の中には、CSVファイルを分割するためのライブラリなどが公開されていますが、 外部のライブラリを使用してはいけないプロジェクトの場合など、自分で自作する必要があります。 その際の一般的な考え方、注意点などを踏まえて作ることができれば、無用なバグを含ませる ことができずにすむので、皆様の考えを教えて頂きたいと思い、質問した次第です。 宜しくお願いします。

    • ベストアンサー
    • Java
  • OSの種類やバージョンの違いおける改行コードの扱いかた

    過去に似たような質問がありましたが、解決出来ませんでしたので、質問をあげさせて頂きます。今VBAを利用してアクセスのデータをエクセルにエクスポートしています。エクスポート自体はうまくいっているのですが、アクセスのフォーム画面で改行(enter)したところが、うまくエクセルの方で表示せず、どうしても文字化けして「・」になったり、文章の一部がかってに消えていたりしてうまくいきません。さらに、WINDOWS98とWINDOWS2000のPC両方でこのシステムを利用したいのですが、98と2000でエクセルの表示状況が違います。得に98の場合は、文字が消えたりが多く発生します。処理の手順ですが、アクセスのフォーム上の値を変数に代入し、そのときにアクセスの改行(vbCrLf)を(Chr(10))にReplace関数を利用して変えてから代入しています。 ==== 関数部分 ==== Function Tyosetu(In_Data As String) As String Tyosetu = Replace(In_Data, vbCrLf, Chr(10)) End Function エクセルのセルには【折り返して表示する】にチェックを入れています。何か対処法があればご教授ください。お願いします。

  • ソフト改行文字が入らず困っています

     VB6環境で、テキストボックスにEM_FMTLINES(= &HC8)をSendMessageしソフト改行文字を入れた形でテキストを取得したいのですが、希に複数行入力されているにもかかわらず、ソフト改行文字が追加されない場合があります。  MultiLineをtrueにしたテキストボックス「text1」とボタン「Command1」をフォームに貼り付け、以下のようなテストプログラムを作成してみました。(お見苦しいところありましたらすみません) Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Private Const EM_FMTLINES = &HC8 'ソフト改行文字を設定/削除する定数 Private Sub Command1_Click() Dim ret As Boolean Dim str As String ret = True 'ソフト改行文字を付加 Call SendMessage(Text1.hwnd, EM_FMTLINES, 1&, ByVal 0&) str = Text1.Text If InStr(str, vbCr & vbCr & vbLf) = 0 Then MsgBox "失敗!" ret = False End If 'ソフト改行文字を削除 Call SendMessage(Text1.hwnd, EM_FMTLINES, 0&, ByVal 0&) If ret = True Then MsgBox "成功" End If End Sub  テキストボックスの横幅をある程度狭くし、複数行になるよう適当に文字を入力しボタンをクリックすると、ほとんど成功するのですが、確かに20回に1回くらい失敗します。  失敗した際は何度ボタンをクリックしても失敗します。逆に成功した文字列でなんどもボタンをクリックしても成功しか帰ってきません。  試した環境   WindowsXP Pro SP2、Windows2000 SP4  なんとも法則性も見つからず、途方に暮れております。決方法やこんな事象ご存知でしたら助けて頂けないでしょうか。よろしくお願い致します。  

  • 「VT端末」って?

    下記URLを見ていたら、VT端末という言葉が出てきたのですが、「VT端末」って何なのでしょう? http://www.allied-telesis.co.jp/library/nw_guide/device/kanri.html

  • 正規表現で少し複雑な置換がしたい

    Javaというよりも、正規表現について質問です。 (一応、言語はJavaで、String#replaceAllを使います) 以下のルールで与えられた文字列の置換を行う正規表現を考えていますが、なかなかうまくいきません。 1.正規表現で \w+:: にマッチする文字列を削除する。 2.ただし、'' (シングルクォーテーション)で囲われている文字列は   1.の対象としない 3.ただし、\' (シングルクォーテーションの前に\があった場合は)   シングルクォーテーションと認識しない。 例: 置換前  A * B \'' CCC.DD::EEE' FFF.GGG::HH ' III' 置換後  A * B \'' CCC.DD::EEE' FFF.HH 'III' 色々試してみたのですが、どうしてもうまくいきません。 正規表現が得意な方、教えていただけますでしょうか・・?

    • ベストアンサー
    • Java