Pilih / salin / tempel di terminal hanya menggunakan keyboard

14

Saya mencari cara untuk memilih , menyalin, dan menempelkan teks di terminal sepenuhnya tanpa mouse.

Saya telah menggunakan tmuxsampai sekarang, tetapi saya menemukan kombinasi kuncinya agak rumit untuk penggunaan sehari-hari copy & paste, dan saya sekarang mencari alternatif.

Apa kalian memiliki saran?

Agar lebih jelas, ini bukan tentang pemipaan ke clipboard tetapi tentang memilih teks yang mungkin dalam misalnya tmux!

Morten
sumber
Lihat jawaban saya di sini: askubuntu.com/a/756348/295286 . Ive membuat fungsi yang akan menyalin teks apa pun yang ada di depan ke clipboard. Itu berfungsi untuk menyalin perintah. Adapun output, itu harus disalurkan
Sergiy Kolodyazhnyy
1
Oke teman-teman ini tidak ada hubungannya dengan stdout- ini tentang memindahkan kursor ke beberapa teks yang dicetak sebelumnya Pilih dan Salin / tempel ke baris input saat ini di terminal: -D Maaf karena tidak lebih tepat dalam deskripsi.
Morten
Cara terbaik untuk menambahkan informasi tambahan ke pertanyaan Anda adalah dengan mengeditnya, dengan tombol edit . Terlihat lebih baik seperti itu, dan komentar terutama untuk tujuan sekunder sementara. Komentar dihapus dalam berbagai keadaan. Apa pun yang penting untuk pertanyaan Anda harus dalam pertanyaan itu sendiri.
guntbert

Jawaban:

3

Pertimbangkan xclip, yang merupakan antarmuka baris perintah ke papan klip X, dan tersedia bersama sudo apt-get install xclip.

Anda mungkin telah memperhatikan bahwa di Ubuntu, jika Anda memilih beberapa teks dan kemudian menekan tombol tengah mouse, teks itu akan disisipkan ke input apa pun yang menjadi fokus. xclipkait langsung ke dalamnya, jadi jika Anda menjalankan seq 10 | xclip -ikemudian tengah-mouse di suatu tempat, Anda akan menempelkan angka 1 hingga 10. Jika Anda memilih nama pengguna saya kemudian jalankan xclip -o | cowsay, Anda akan mendapatkan sapi mengatakan kata "ymbirtt".

ymbirtt
sumber
3
Saya terkejut jawaban ini diterima. @ porten secara khusus menunjukkan bahwa ini bukan tentang pemipaan ke clipboard tetapi tentang memilih teks yang mungkin dalam misalnyatmux . Sepertinya jawaban dari @daisy dan @ blue112 ada benarnya.
Tad Lispy
1
@ TadeuszŁazurski, saya juga jujur. xclipadalah alat yang sangat baik yang melengkapi jawaban yang ada, tapi aku tidak yakin itu yang jawabannya
ymbirtt
10

Saya selalu menggunakan Ctrl+ Shift+ Cdan Ctrl+ Shift+ Vuntuk menyalin dan menempel di terminal (non tmux) saya.
Anda dapat mengubah pintasan keyboard ini di preferensi keyboard terminal (non-tmux) Anda.

Namun jika Anda ingin tetap menggunakan tmux Anda juga dapat mengubah pintasan keyboard tmux dengan menambahkan perintah ~/.tmux.conf. cukup tambahkan berikut ini di file itu:

bind-key -n [shortcut. for example Ctrl+v is C-v] [what you want to do. for example 'new-window' etc]

Ini akan terlihat seperti ini

bind-key -n C-t new-window

Anda tidak perlu kunci awalan perintah untuk menjalankan perintah dalam ~/.tmux.conffile.

Untuk info lebih lanjut tentang hal-hal yang tersedia untuk ~/.tmux.confmemeriksa tautan ini

Menyalin dan menempel sangat sederhana dapat dilakukan menggunakan ini namun untuk sedikit lebih kegunaan saya sarankan menggunakan copy-paste config gaya Vim.
Mengaktifkan gaya salin / tempel Vim dapat dilakukan dengan file konfigurasi ini atau file konfigurasi lainnya . Namun ini membutuhkan penggunaan kunci awalan.
Seseorang bahkan membuat ekstensi tmux untuk menyederhanakan tindakan copy / paste ke clipboard sistem di tmux. Mungkin layak untuk dilihat.

Jika Anda menginginkan alternatif untuk Tmux, Anda dapat mencoba dvtm ( sudo apt-get install dvtm dtach). Saya belum menggunakannya sendiri tetapi sepertinya memiliki opsi serupa.

Akisame
sumber
4

Untuk menyalin, gunakan Ctrl+ Shift+C

Untuk menempel, gunakan Ctrl+ Shift+ Vatau Shift+insert

Cara lain untuk melakukan ini:

Perintah run pertama screen, setelah itu dapat melakukan langkah-langkah berikut:

  • Tekan Ctrl+ a+ EscIni akan membuat layar dalam mode salin.
  • Sekarang, gerakkan kursor ke awal bagian untuk menyalin & tekan enter.
  • kemudian, pindahkan kursor ke akhir bagian untuk menyalin & tekan enter.
  • Sekarang, tekan Ctrl+ a+ ]untuk menempel.
bunga aster
sumber
5
Bagus, tetapi untuk menyalin sesuatu Anda harus memilihnya terlebih dahulu. Bagaimana Anda memilih teks tanpa mouse?
Ponytech
1
@ Ponytech saya coba lakukan di gnome-terminal tanpa menjalankan perintah seperti screen tapi saya tidak bisa.
Daisy
Menggunakan layar adalah satu-satunya cara yang saya temukan sejauh ini. Terima kasih atas pembaruannya
Ponytech
2

Anda dapat menggunakan screenmode pemilihan.

Masukkan sesi layar menggunakan screenperintah.

Kemudian, gunakan Ctrl+ adan Escuntuk masuk ke mode pemilihan.

Anda kemudian dapat memindahkan kursor Anda, memilih beberapa teks menggunakan space, keluar dari mode pemilihan, dan menempelkannya ketika Anda ingin dengan Ctrl+ adan ].

Informasi lebih lanjut di sini: http://web.mit.edu/gnu/doc/html/screen_11.html

blue112
sumber