こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

viでヤンクした内容をWINDOWS上のファイルにペーストするには?

LINUX初心者です。お願いいたします。

windows上からTeratermでLINUX上のファイルをviで開き、開いたファイルの内容をコピーして、WINDOWS上のテキストファイルにペーストしたいと考えています。
困っていますのは、コピーしたい内容がTERATERM上でスクロールをしなければならない程多いため、単純に、TERATERM上で通常のWINDOWSで行うように、マウスのカーソルでコピーしたい内容を選択して、コピー&ペーストができません。
viのヤンク(nyy)しても、viで開いているファイル上ではペーストできますが、WINDOWS上のテキストファイルにはペーストできません。
どうすれば、TERATERM上でスクロールするほど多いテキスト内容をWINDOWS上のテキストファイルにコピーできるのでしょうか。

投稿日時 - 2005-04-23 15:54:20

QNo.1347660

すぐに回答ほしいです

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

>ファイルを開いた後、検索して対象部分を決めてから、

検索ですが決まったキーワードがあれば、grep/egrepコマンドを使用すれば一致した行が出力されますが、ギガバイト単位のファイルだとどうしても結構時間は掛かりますね。

-------8<-------8<-------8<-------8<-------
>TeraTermのスクロールバーを動かしてコピーしたい部分の最初まで戻り、その部分にマウスカーソルを持って行き、左ボタンを押しながら選択して下まで持っていく
-------8<-------8<-------8<-------8<-------

と自分で書いておきながら良く考えたら、質問でお書きになっている「通常のWINDOWSで行うように、マウスのカーソルでコピーしたい内容を選択して、コピー&ペースト」が出来るという事ですね。

投稿日時 - 2005-04-23 18:12:01

お礼

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

とりあえず、こんな感じで試して見ます。

cat /home/hoge/app/debug.log | grep -A 300 ERROR | more

> 自分で書いておきながら良く考えたら、質問でお書きになっている「通常のWINDOWSで行うように、マウスのカーソルでコピーしたい内容を選択して、コピー&ペースト」が出来るという事ですね。

そのとおりです。

投稿日時 - 2005-04-23 22:31:14

ANo.4

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(5)

#1の者です。

ファイルのサイズがあまりにも巨大ですね。
先の回答にもあった通り、e?grep、tail等のテキスト処理フィルタ、awk、perl等のスクリプト言語を用いて必要な条件の内容を抽出してしまうのも方法のひとつかと思います。

しかし、GBものテキストファイルであれば、gzipやbzip2で圧縮後、FTPすれば多少は転送効率も高くなるかもしれません。

そもそも、TeraTermでcatしてること自身、FTPしてるのと替わりないのではないでしょうか?

投稿日時 - 2005-04-23 23:42:05

お礼

御回答ありがとうございました。

>しかし、GBものテキストファイルであれば、gzipやbzip2で圧縮後、FTPすれば多少は転送効率も高くなるかもしれません。

基本的なことがわかっていないのですが、gzipのファイルはWindows上でも開けるのでしょうか。gzipはLINUX特有のものかと思っていました・・・明日、試してみます。

>そもそも、TeraTermでcatしてること自身、FTPしてるのと替わりないのではないでしょうか?

たしかに、フィルタを何もせずに、catすると、ものすごく遅かったので、FTPでコピーするのと、あまり変わらないかも知れません。フィルタをかけてcatしてどのくらい速くなるかがポイントと思っています。あまり変わらなければ、検討し直しです。

投稿日時 - 2005-04-24 16:55:08

ANo.3

TERATERMのメニュー、ファイルでログを取るようにしておいて、catすればいいのでは?

投稿日時 - 2005-04-23 16:34:25

お礼

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

>TERATERMのメニュー、ファイルでログを取るようにしておいて

TERATERMのログについては、初めて知りました、試してみたいと思います。ただし、ファイルがGバイト単位の膨大なため、catコマンドを投げても、すぐに返ってきますでしょうか。

質問ばかりで申し訳ございません。

投稿日時 - 2005-04-23 17:36:21

ANo.2

TeraTerm(scroll buffer指定で大きめの行数を設定)上でcatコマンドでファイルを表示し、TeraTermのスクロールバーを動かしてコピーしたい部分の最初まで戻り、その部分にマウスカーソルを持って行き、左ボタンを押しながら選択して下まで持っていくとスクロールしながら選択されていくのでコピーしたい最後部分までマウスカーソルを持って行き左ボタンを離すと反転されて選択されていると思います。

その状態でテキストエディタでペースト(貼り付け)するとTeraTermで選択した部分をペースト出来ると思います。

文章で書いちゃうと分かり難いかもしれませんが、感じは伝わりましたかね?

投稿日時 - 2005-04-23 16:24:43

お礼

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

ファイルがGバイト単位であるため、catコマンドで開くと、すごく遅くて結局開けませんでした。

ファイルを開いた後、検索して対象部分を決めてから、そこから、

>TeraTermのスクロールバーを動かしてコピーしたい部分の最初まで戻り、その部分にマウスカーソルを持って行き、左ボタンを押しながら選択して下まで持っていく

としたいのですが、どうすればよろしいのでしょうか。

>文章で書いちゃうと分かり難いかもしれませんが、感じは伝わりましたかね?

伝わりました。

投稿日時 - 2005-04-23 17:30:13

ネットワークでつながっているコンピュータのテキストデータであれば、Windowsのエディタで直接読み込んだほうが効率いいのではないでしょうか?
または、FTP等でファイル転送してしまうとか、わざわざコピー&ペーストするのにこだわらなくても済むと思います。

投稿日時 - 2005-04-23 16:20:16

お礼

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

>ネットワークでつながっているコンピュータのテキストデータであれば、Windowsのエディタで直接読み込んだほうが効率いいのではないでしょうか?

たしかに、ファイルサイズが小さい場合は、WINSCP、もしくは、FFTP等でlinuxから直接ファイルを読み込む方がいいと思います。実際、今までそうしておりました。しかし、ファイルサイズがGバイト単位になってきますと、開くのが遅くなり効率が悪いため、方法を変える必要があります。そこで今回の質問をさせていただきました。

投稿日時 - 2005-04-23 17:18:30

あなたにオススメの質問