コマンドラインのクリップボードコピーアンドペーストユーティリティですか?


127

Windowsでは、コマンドラインのクリップボードコピーアンドペーストユーティリティを使用しました...

  • pclip.exe そして gclip.exe

これらはWindows用のUnixUtilsポートでした(ただし、プレーンテキストのみを処理していました)。任意の形式を記述/抽出できる他のネイティブ Windowsユーティリティがいくつかありました。

Synaptic Package Managerで似たようなものを探しましたが、何も見つかりません。

私が見逃した何かがそこにありますか?...または、これはBashスクリプトで利用できますか?

私が望むユーティリティのタイプは、std-in / std-outまたはfile-in / file-outを介して読み取り/書き込みができ、Unicode、リッチテキスト形式、画像などのクリップボード形式を処理できるようになります...

NB:私はクリップボードマネージャーを求めていません。


:関連unix.SEからの質問を参照してくださいunix.stackexchange.com/questions/30093/...
landroni


vim[enter]"+P :3 vimを実行してから、" レジスタから(つまり、システムクリップボードから)テキストを貼り付けます)。そうすれば、指先で最高のテキストエディター(の1つ)を手に入れることができ:w filenameます。また、私はいつもtmuxvimを実行しています。つまり、端末に小さなテキストをコピーする必要がある場合は、(行選択の有無にかかわらず)選択してから(クリップボードにヤンクまたはコピーする)を選択してから、新しいテキストを作成しますtmuxペインで、<ctrl> + <shift> + vで貼り付けることができます。さらに、クリップボードをファイルに書き込む必要がある場合に使用することがあります。乾杯^ u ^vV"+yxsel -b > filename
dylnmc

回答:


131

私はxsel xselをインストールを使用していますが、プレーンテキストとUnicodeテキストでのみ使用しています。


xsel3つの異なる「クリップボード」にコピーして貼り付けることができます。デフォルトでは、X Window Systemのプライマリ選択を使用します。これは、基本的に現在選択されているものです。X Window Systemには、2次選択(あまり使用されない)とクリップボード選択もあります。デスクトップ環境(Gnome、KDE、XFCEなど)がクリップボードに使用するものであるため、おそらくクリップボードの選択を探しています。xselでそれを使用するには:

xsel --clipboard < new-clipboard-contents.txt
xsel --clipboard > current-clipboard-contents.txt

1
Adi ... xselはテキストベースのみのようです(おっしゃるように)。したがって、より包括的なユーティリティを探します...しかし、その情報ドキュメントを読むのは非常に興味深いものです... (ターミナルで)マウスを中クリックすると、現在選択されているテキストがコマンドラインに貼り付けられることは知っていましたが、この機能がほとんどのXアプリに適用されることを知りませんでした...ミドルクリックで貼り付けます(ただし、一部のアプリはそれをオーバーライドしているようです)。2つのクリップボード!..非常に便利です。.3番目のX選択バッファについて詳しく読む必要があります。
-Peter.O

xselはUnicodeテキストで動作します。freedesktop wikiページでXクリップボードの詳細を読むことができます:freedesktop.org/wiki/Specifications/ClipboardsWiki
アディロイバン

私はこの新しい情報に頭を悩ませる必要があります.. 3つのクリップボード!PRIMARY、SECONDARY、CLIPBOARD ...これは、私がWindowsで使用しているものとは非常に異なります... ..明日、これに戻ります...(誤解ですが、今は読みすぎです。)
Peter.O

ありがとう... xsel仕事をします(テキスト用)...他の形式で何かが見つかるかもしれません。
Peter.O

6
xsel -bはの略ですxsel --clipboard
アンドレイデュマ

85

xclip xclipをインストールは選択肢の1つかもしれません。

cat samples.sh | xclip -sel clip

エイリアスを使用して.bashrcファイルで設定することもできます。

alias clipboard='xclip -sel clip'

バイナリデータをファイルに貼り付けるための鍵は、クリップボードにあるメディアタイプxclipを伝えることです。PNGの場合:

xclip -selection clipboard -t image/png -o > "`date '+%Y-%m-%d_%T'`.png"

これで~/Dropbox/.mybashrc;)エイリアス(clipboard2photo)を追加して、画像ファイルに簡単に貼り付けることができます(いつかNautilusに追加されるかもしれません)。


...これはよさそうだが、私はそれに見する機会を持っていなかった、まだ...私はできるだけ早くということを行います
Peter.O

また、xclipはテキストの選択のみを処理します。
スティーブビーティー

2
また、コマンドは次のように短くすることもできますxclip -se c
Jeromy Anglim

1
これはmanページにない理由を私は理解していない
Sergiy Kolodyazhnyy

1
ファイルにエラーを貼り付けようとすると、このエラーが発生しますエラー:ターゲットimage / pngが利用できません
エミリオニコラス

12

パーセライト

私は長年クリップボードマネージャーとしてparcelliteを使用しています。通知領域で実行され、プライマリ選択と標準freedesktop.orgクリップボードの両方を管理するための多くのオプションを提供します。

トレイのアイコン

クリップボードのアイテムを管理することに対する私の答えです。

環境設定


これは良いパネルアプリのように見えます。「アクション」は便利です...しかし、残念ながら、私が探しているタイプのツールではありません。私は質問をより具体的な情報を含むように書き直しました...たぶん私は後だ正確な事は無名のPythonスクリプトは、など...非常に良いのカップルがあったネイティブの Windows専用ユーティリティが利用できるので、私は相当のUbuntuのどこかに漂っことだろうと思うだろう/ Linuxの世界
...-Peter.O

参考までに、Parcelliteにはクールな機能があります-コピーされたテキストの履歴。履歴ダイアログから自動貼り付けを有効にするには、次のことも行う必要がありますinstall xdotool
Noam Manos

10

私は最近のツールに出くわしたxclip-copyfilexclip-cutfilexclip-pastefile(パッケージxclip)。これらのツールを使用すると、コマンドラインからファイル全体をコピー/カット/貼り付けできます。

彼らのマニュアルページはこちらで見ることができます。


10

clipit(http://clipit.rspwn.com/)は、コマンドラインからテキストをパイピングできるgtkのクリップボードマネージャーです。

ls | clipit;

編集:現在、ClipItの公式ウェブサイトには何もありませんが、GitHubから入手できます


私は他の理由でClipItを使用していますが、端末からデータを取得できることを知りませんでした。その情報をありがとう。
Juraj.Lorinc

3

これにはCopyQを使用できます。ウェブサイトから:

高度な機能を備えたクリップボードマネージャー

  • CopyQは、検索および編集可能な履歴を持つクリップボードマネージャーです。
  • LinuxおよびWindowsをサポートします。
  • OS X 10.9+の実験的サポート。
  • テキスト、HTML、画像、その他のカスタム形式を保存します。
  • 高度なコマンドラインインターフェイスとスクリプト。

テキストファイルをコピーするには:

copyq action "cat /tmp/file.txt" "" && copyq select 0

画像をコピーするには(MIMEタイプを指定する必要があります):

copyq write image/png - < file.png && copyq select 0

データファイルをコピーするには(MIMEタイプを指定する必要があります):

copyq write application/pdf - < file.pdf && copyq select 0

その他のドキュメントと使用例については、Wikiを確認してください。

ppa:noobslab / indicators PPAを使用するか.deb、プロジェクトの[ ダウンロード]セクションから最新の安定版のパッケージ済みファイルを手動でダウンロードすることでインストールできます。


1
少なくともUbuntu 16.04の場合、ppaは最新ではありません。CopyQのリリースGitHubサイトから直接ダウンロードすることをお勧めします。
ニコライ

3

クリップボードにテキストをコピーするだけの場合:

echo -n "some-text" | xclip -selection clipboard


2

ペーストリー

インディケーターアプレットをサポートする新しいクリップボードマネージャーが最近リリースされました(まだアーカイブにはありません)。テキストクリップボード履歴の追跡に加えて、データクリップボードエントリ(ファイル、フォルダなど)もキャプチャおよび保持します。これは、GUI /クリップボード環境を介して多くのファイルを操作する場合に便利です。

代替テキスト

次のPPAを追加できますppa:hel-sheep/pastie


Marcoの提案に感謝しますが、クリップボードマネージャーは必要ありません。時折私は、テキストファイルにいくつかの一時的なテキストを貼り付けますが、私は実際に「履歴管理」とは、物事を遅くすることがわかります(しかし、それは私だけだ)..私はできるコマンドラインツールの後に本当によ選択 /ストアを抽出します特定 clipboadへ/ ..私はUbuntuのクリップボードを想定していますから、フォーマットが(ユーザーの...私は要件はどのプラットフォームでも同じであるため、それが大幅に異なっていた場合、私は唖然とするだろう)」、Windowsのものと類似しています誰かがあなたの提案を役に立つと確信するでしょう。
Peter.O


1

DBusインターフェースを備えたクリップボード管理デーモンアプレットであるGPasteデーモン設定はどうですか:

  • GPasteは、Valaで書かれたGNOME用のクリップボード管理スイートです。
  • GPaste設定の外観が更新され、最近のGNOMEにより適合しました
  • デーモンは完全に均等になりました(ポーリングがなくなり、消費電力が少なくなります)
  • GPasteClipboardには、GtkClipboardのものと同様の「所有者変更」信号があります
  • 履歴内のデータが使用するメモリの最大量を設定する新しい設定
  • FIFOモードが削除されました(設計がありません)
  • コードのクリーンアップと近代化
  • g_paste_history_addが完全転送になりました
  • g_paste_keybinder_add_keybindingは完全に転送されるようになりました

インストール:

で、それをインストールするにはUbuntuの13.1013.0412.10、または12.04、以下のコマンドを使用します。

sudo add-apt-repository ppa:webupd8team/gnome3
sudo apt-get update
sudo apt-get install gnome-shell-extensions-gpaste

または(Gnome-Shellを使用する場合も)インストールgpasteします。synaptic package managergnome-shell-extensions-gpaste

別のオプションは、を介したインストールsoftware-centerです。

ここに画像の説明を入力してください



1

RTF形式の場合、この手順を使用します。テキストをアプリケーションのクリップボードにコピーします。rtfなのか何なのかわからない場合は、次のコマンドを使用して確認します。

xclip -selection clipboard -o -t TARGETS

次のようなものが出力される場合:

ターゲット

text / rtf

テキスト/リッチテキスト

だから私は大声で叫ぶことに抵抗することはできません。そのショットの祈りの後、ただ明らかなことが続きます。

xclip  -selection clipboard -o -t text/rtf > mypreciousRTFcontent.rtf

その後、すべてをlibreofficeで処理し、すべての友人にスパムとして送信します。

:-)


0

ヨーヨーノマーズ、CORBA-crapを使用することで得られるものです。
yarソフトウェアには、デフォルトでインストールされていないツールを使用することほど良いものはありません。

yaがKDE-plasmaなどの適切なデスクトップ環境を使用していれば、そのような問題はありません。yaは、たとえばコンソールなどのyaのソフトウェアからdbusを使用できるからです。

qdbus org.kde.klipper /klipper setClipboardContents "NiHao"
qdbus org.kde.klipper /klipper getClipboardContents

個人的には、実際にC#で直接dbusに接続しています。つまり、qdbusは必要ありません。
yaにはklipperがないので、yaには役に立たないかもしれませんが、とにかくそれを言及したいと思いました。

PS:そのC#コードをコピーしないでください。Task.Resultはデッドロックする可能性があります。

private static async System.Threading.Tasks.Task<string> GetClipboardContentsAsync()
{
    string clipboardContents = null;

    Tmds.DBus.ObjectPath objectPath = new Tmds.DBus.ObjectPath("/klipper");
    string service = "org.kde.klipper";

    using (Tmds.DBus.Connection connection = new Tmds.DBus.Connection(Tmds.DBus.Address.Session))
    {
        await connection.ConnectAsync();

        IKlipper klipper = connection.CreateProxy<IKlipper>(service, objectPath);

        clipboardContents = await klipper.getClipboardContentsAsync();
    } // End Using connection 

    return clipboardContents;
}


private static string GetClipboardContents()
{
    return GetClipboardContentsAsync().Result;
}


private static async System.Threading.Tasks.Task SetClipboardContentsAsync(string text)
{
    Tmds.DBus.ObjectPath objectPath = new Tmds.DBus.ObjectPath("/klipper");
    string service = "org.kde.klipper";

    using (Tmds.DBus.Connection connection = new Tmds.DBus.Connection(Tmds.DBus.Address.Session))
    {
        await connection.ConnectAsync();

        IKlipper klipper = connection.CreateProxy<IKlipper>(service, objectPath);

        await klipper.setClipboardContentsAsync(text);
    } // End using connection 

}


private static void SetClipboardContents(string text)
{
    SetClipboardContentsAsync(text).Wait();
}

-1

はいあります。tmuxどちらがより高度か試してくださいscreen。tmuxをインストールするには、ターミナルでこれを入力します。

sudo apt-get install tmux

また試してみてくださいgpm。コマンドgpmtmux良い組み合わせかもしれません...


2
Screenは、クリップボードマネージャーではなく、マルチターミナルエミュレーターです。
マルコセッピ

それはそのようで、画面tmuxは、端末レベル(私はへの参照を見つけることができませんでのみ作品を「クリップボード」彼らのいずれかで情報の文書を)...私が探しているで システム全体のクリップボードのコピー&ペーストユーティリティ...おそらく端末をタグとして使用すべきではありません...私が望むユーティリティのタイプは、std-in / std-outまたはfile-in / file-outを介して読み取り/書き込みができ、Unicode /リッチテキスト/画像/などのクリップボード形式
...-Peter.O

私はstackoverflowの参照を見つけました... gpm非X端末用の「クリップボード」でありGNU screen、独自の「クリップボード」もあります...あなたがそれらを言及した理由がわかりました...これは素晴らしい情報です、そして舞台裏で何が起こっているのかをより深く理解するようになりました...今のところ基本的なXtermの「選択システム」(クリップボード)に固執します。Linuxの「クリップボード」はWindowsとは大きく異なるようです。その私はここで非常に異なった方法... 1 :)で行うことができる探していたもの
Peter.O
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.