最後のコマンドのみのターミナル出力をクリアします


13

何百行もの出力をスクロールして前のコマンド履歴を表示するのではなく、最後のコマンドの出力をクリアできますか?たとえば、を実行した後ls、必要がなくなったため、出力をクリアします。

編集:

これはいつものではないclearか、ctrl+L操作。前のコマンドの出力を探すために履歴をスクロールバックするという考えですがls、本当にしたい場合を除いて、、、、catまたはsudo apt-get install出力の負荷を超えてスクロールする必要はありません。次のようになります。

cat fileIWantToRemember
ls directoryIWantToForget
# some command that wipes the output of ls
# scroll back to see the output of cat immediately

出力をクリアする、またはコマンド履歴からコマンドを削除するという意味ですか?コマンド履歴を変更したい場合、おそらくこのスレッドはあなたが探しているものに対処していますか?
アーニー

端末は単にテキストのストリームを表示し、一部を独自の内部バッファに格納します。コマンド出力を知る方法や区別する方法はありません。rxvt-unicode端末には、このようなものを実装できる可能性のあるperlインタープリターがあります。しかし、私が知る限り、それは行われていません。
キース

昔、Mac OS Xでこの機能を備えたターミナルエミュレータを使用しましたが、それが何と呼ばれていたか思い出せません。しかし、それは無料ではありませんでした。しかし、Googleでクイック検索を行っているときにfinalterm.orgに遭遇しました。これは、その機能を実装しようとしているようです。ただし、「Final Termは開発が進んでおり、安定しておらず、機能も完全ではありません!」という理由で、試さなかった。しかし、面白そうだ。グーグル検索は、それが価値があるものでしたterminal emulator output folding
リシ

Final Termは、コマンド(および他の多くの素晴らしいもの)を折りたたむのに十分なほど開発されており、それを行うキーボードショートカットがあれば、問題は解決されます。私は狂っていたと思い始めていました...
nacnudus 2013

1
それはあなたの正確な答えではありませんが、そのような場合、大きなファイルのコンテンツを表示するには、「cat」の代わりに「less」コマンドを使用します。もう1つは、コマンドがコンソールへの出力として膨大な数の行を提供する場合は、「$ the-command | less」と書くことで回避できます。
Devasish

回答:


4

@riciのおかげで、この動作は「折りたたみ」と呼ぶことができます。コマンドの出力は忘れられませんが、再び必要になるまで非表示にできます。折りたたみはテキストエディターでは一般的ですが、ターミナルエミュレーターではまれなようです。

Final Termは新しいターミナルエミュレーターであり、他の多くの凝ったトリックの折りたたみを含みます。注意:「Final Termは開発中であり、安定しておらず、機能も完全ではありません!」テスト時にコマンドを折りたたむには十分に開発されていましたが、不安定すぎてクラッシュしませんでした。見るもの。


0

あなたは明確なコマンドを探していると思います...

clear

「クリア」は、ビューから最後のコマンドをクリアします。必要に応じて、ターミナルを上にスクロールしてもう一度表示できます。


重要なのは、他の履歴を探すときに、スクロールしなくても済むことです。
nacnudus 2013

コマンドからの出力を抑制しますか?そうならば、これはあなたを助けるかもしれない:stackoverflow.com/questions/617182/...
phe0113

2
出力を見たくないのなら、それは素晴らしいことです。初めて出力を見て、それを忘れたいです。だから私が与えた例では、ls何らかの理由での出力を検査したいのですが、猫の出力を見つけるためにスクロールし続ける必要がないように、それを取り除きたいと思います。もちろん、猫をもう一度実行することもできますが、コマンドのシーケンスを保持したいことは想像できます。それらをすべて繰り返さなくてもいいのはいいことです。
nacnudus 2013

0

bashではCtrl + Lclearコマンドと同様に、ショートカットを押して画面をクリアできます。(http://ss64.com/bash/syntax-keyboard.html

または、history | tail -3最後の3つのコマンドを表示するために使用できます。(http://www.howtogeek.com/howto/44997/how-to-use-bash-history-to-improve-your-command-line-productivity/


下記の@Justinへの私のコメントを参照してください。重要なのは、他の履歴を調べているときに、スクロールしてスクロールする必要がないことです。HISTCONTROL=ignorespace2番目のリンクのように、事後に使用できるものがよいでしょう。
nacnudus 2013

私はあなたが達成したいことで少し迷っています。別の考えとして、私が使用した多くのコンソールでは、通常、矢印キーを使用してコマンド履歴をbashで参照できますが、これはあなたの状況に当てはまりますか?
phe0113 2013

私の編集は質問を明確にしますか?
nacnudus 2013

@nacnudus、はい、私は今あなたのポイントを得ます:)
phe0113

0

履歴からアイテムを削除したいようです。これを行うには、〜/ .bashrcを編集して以下を追加することにより、ログアウト時ではなく、その場で履歴の書き込みを有効にする必要があります。

shopt -s histappend; export PROMPT_COMMAND='history -a';'

次に、アイテムを削除するには、次の操作を実行できます。

history -d offset、ここで、offsetは削除する履歴エントリです

このフォーラムのスレッドに基づいています


これは履歴ファイルから削除するようですが、これはほぼ正しい考えですが、現在の端末から消去できますか?
nacnudus 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.