上記の行を端末内でコピーするコマンドはありますか? (例えばpwdの出力をコピーする)


0

上記の行を端末にコピーするコマンドはありますか?これはシェルにとらわれない質問(例えばbash、zshなど)です。基本的にはpwdを使用していて、次のコマンドで長いディレクトリを入力せずに出力をコピーしたいのです。

回答:


2

Bashは前のコマンドの標準出力や標準エラー出力を自動的には保存しません。パフォーマンス上の理由から、これは主に行われません。時にはそうであるように、標準出力が非常に大きい場合、それは潜在的に大量のRAMを占有する可能性があります。

これが、ターミナルエミュレータ、つまり内蔵のLinux VTから最高のものまで、すべてが理由でもあります。 gnome-terminalそれが "折り返す"前に、スクロールバックバッファの量(あなたがスクロールできる行数)に適度に小さな制限を課します。

ユーザーが確認せずに大量のRAMを自動的に占有すると、次のような多くのスクリプトやコマンドシーケンスのシェルが大幅に遅くなります。 しない この特定の動作が必要です。

代わりに、ユーザーは知っている必要があります あらかじめ 標準出力を保存したいのであれば、後のコマンドで参照できます。

これを行う2つの方法:

  • echo $(pwd) - 列をなして
  • MYPWD=$(pwd); echo ${MYPWD} - 出力を取得して後で参照するための個別の変数

ところで、あなたはチェックするかもしれません PWD 環境変数それはあなたが方法2を使うのを助けるかもしれません。


ありがとう、私は現在iTerm2と "oh my zsh"を使用しています - しかし、あなたが提案した2つのオプションを使用すると、出力をプロンプトに貼り付ける方法が見えないのです。例えばpwdを使用して/ Users / Foo / Documentsという結果を返しても、これをプロンプトに貼り付けるオプションがまだ表示されていません。
Wunderbread
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.