現在のシェルからテキストを抽出する方法


2

Linuxプラットフォームで質問をしたいときは、常に現在のシェルのスクリーンショットを提供する必要があります。スナップショット、アップロード、リンクにかかるコストはそれほどかかりません。現在のシェルから直接テキストを抽出するコマンドはありますか。

回答:


1

あなただけを使用することができます スクリプト コマンド。

マニュアルから抜粋:

スクリプトユーティリティはタイプスクリプトを作成します。   あなたの端末に印刷されたすべてのもののうち。
それは学生に役立ちます   インターコピーのハードコピー記録が必要です。   の証明としてのアクティブセッション   typescriptファイルと同じように割り当て   後でlpr(1)でプリントアウトする。

引数ファイルが与えられたら、スクリプト   すべてのダイアログをファイルに保存します。いいえの場合   ファイル名が与えられ、タイプスクリプトは   ファイルのタイプスクリプトに保存されます。

引数commandが与えられたら、   スクリプトは指定されたコマンドを実行します   オプションの引数ベクトルを使って   対話式シェルの代わりに。

例(タイプスクリプトファイルの情報):

Script started on Mon Nov  2 21:13:17 2009
bash-3.2$ pwd
/Users/ricbax
bash-3.2$ ps
  PID TTY           TIME CMD
  395 ttys000    0:00.02 -bash
  425 ttys000    0:00.00 script
  426 ttys001    0:00.01 /bin/bash -i
bash-3.2$ exit
exit

Script done on Mon Nov  2 21:13:44 2009

+1とてもいいね!それは彼らが得るのと同じくらい簡単です。
DaveParillo

2

screen これができます。に接続 screen たとえば、シェルコマンドを実行して、現在の端末の「ハードコピー」を取得します。 hardcopy 画面コマンド(Ctrl-Aを入力してから「h」を押す)出力は通常あなたのホームディレクトリに保存されます。 ~/hardcopy.1~/hardcopy.2など

現在の画面に表示されているもの以上のものが必要な場合は、 screen のスクロールバックバッファ

  • Ctrl-Aを押してからEscを押してアクセスします(「コピーモード」になります)。
  • Ctrl-U / Ctrl-Dまたは矢印キー、あるいはvimスタイルの移動(j / k / l / h)で上下にスクロールします。
  • Escキーを押して「コピーモード」を終了します。

「コピーモード」を使うと、テキストのブロックを選択して次のようなハードコピーを得ることができます。

  1. 「コピーモード」に入ります(Ctrl-Aを押してからEscを押します)。
  2. コピーしたいテキストの先頭までスクロールします。
  3. SPACEを押します。これが始まりです。
  4. コピーしたいテキストの末尾までスクロールします。
  5. もう一度Spaceキーを押します。これでコピーバッファがいっぱいになり、「コピーモード」を終了します。
  6. コピーバッファをファイルに書き込みます(Ctrl-Aを押し、次に > )コピーバッファはに書き出されます。 /tmp/screen-exchange
  7. コピーする /tmp/screen-exchange 好きなファイルに

    cp /tmp/screen-exchange ~/my.terminal.printout.txt

端末の出力は ~/my.terminal.printout.txt


@〜クワック:それは少し複雑です
Jichao

screenは非常に強力なユーティリティなので、そうだね、慣れるまでに時間がかかる。私は長い間それを使ってきました、そして今ちょうどこのことを考え出しています。あなたがすでにスクリーンユーザーであれば、 "Ctrl-A、h"はそれほど複雑には思えないでしょう。
quack quixote
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.