Skopiuj wklej w Bash na Ubuntu w systemie Windows

184

Jak wykonać operację kopiowania wklej z Windows 10 do Bash na Ubuntu w środowisku Windows?

Próbowałem następujące:

  • ctrl+ shift+v
  • kliknij prawym przyciskiem, aby wkleić

Jakieś sugestie?

Ghassan Zein
źródło
3
Zaktualizowałem pytanie, abyś mógł je zrozumieć. Chodzi o NOWĄ bash Ubuntu w systemie Windows.
Ghassan Zein,
1
Jaki jest twój terminal?
glenn jackman
9
Chłopaki coś wam brakuje: Windows Anniversary 10 Update ma wbudowaną nową wersję Ubuntu Bash, więc przeczytajcie o tym, a wtedy zrozumiecie pytanie. Mój terminal JEST PODSTAWĄ UBUNTU NA WINDOWS!
Ghassan Zein
3
To powinno zostać ponownie otwarte. Ze strony Bash na Ubuntu w systemie Windows „about” [moje podkreślenie]: „Bash w Windows zapewnia programistom znaną powłokę Bash i środowisko Linux ...”.
Kenny Evitt
1
Jako „Windows Creators Update” systemu Windows powinieneś być w stanie skopiować do schowka poprzez potokowanie do clip.exe, np echo "Blah blah blah" | clip.exe.
Kenny Evitt

Odpowiedzi:

162

Aktualizacja 2019/04/16: Wygląda na to, że kopiowanie / wklejanie jest teraz oficjalnie obsługiwane w kompilacji Windows> = 17643. Spójrz na odpowiedź Richa Turnera . Można to włączyć za pomocą tego samego menu ustawień opisanych poniżej, klikając pole wyboru obok „Użyj Ctrl + Shift + C / V jako Kopiuj / Wklej”.


Innym rozwiązaniem byłoby włączenie „Trybu QuickEdit”, a następnie można go wkleić, klikając prawym przyciskiem myszy terminal.

Aby włączyć tryb QuickEdit, kliknij prawym przyciskiem myszy pasek narzędzi (lub po prostu kliknij ikonę w lewym górnym rogu), wybierz Właściwości, a na karcie Opcje kliknij pole wyboru obok Trybu QuickEdit.

Po włączeniu tego trybu możesz także kopiować tekst w terminalu, klikając i przeciągając. Po dokonaniu wyboru możesz nacisnąć Enter lub kliknąć prawym przyciskiem myszy, aby skopiować.

chipit24
źródło
1
Nie zdawałem sobie sprawy, że kliknięcie prawym przyciskiem od razu wkleiło ... Spodziewałem się, że pojawi się menu kontekstowe z opcjami.
RSmithlal
2
Po użyciu lewego przycisku myszy, aby zaznaczyć tekst, muszę dwukrotnie kliknąć prawym przyciskiem myszy, aby tekst został wklejony.
Felipe Alvarez
4
Tak .. kliknięcie myszą działa .. czy można to zrobić tylko za pomocą klawiatury (zaznaczanie i wklejanie)? to jest przecież cel używania VIM / UBUNTU / Shell.
alpha_989
5
Więc nie można wkleić za pomocą klawiatury?
qwertzguy
2
@FelipeAlvarez Aby wkleić, wystarczy kliknąć prawym przyciskiem myszy. Przy pierwszym kliknięciu prawym przyciskiem myszy kopiujesz tekst; przeczytaj uważniej odpowiedź. Minęło trochę czasu, odkąd użyłem Bash na Ubuntu w systemie Windows, ale nie znalazłem sposobu, aby włączyć kopiowanie / wklejanie za pomocą klawiatury.
chipit24
49

Aby kliknąć prawym przyciskiem myszy, aby wkleić do pracy:

  • Kliknij prawym przyciskiem myszy pasek tytułu> Właściwości
  • Karta Opcje> Edytuj opcje> włącz QuickEdit Mode

wprowadź opis zdjęcia tutaj

jaredlt
źródło
1
Czy możesz wyjaśnić, jaki jest tryb wstawiania?
alpha_989
1
@ alpha_989 Tryb wstawiania wstawia tekst pod kursorem (i przesuwa kolejne znaki w prawo), zamiast zastępować znaki po prawej stronie kursora. Tryb wstawiania to domyślny tryb, którego większość ludzi oczekuje. Z testów nie wynika, że ​​to ustawienie jest przestrzegane w WSL. Mam to niezaznaczone, ale nadal wstawia, a nie zastępuje.
jaredlt
30

Ok, w końcu został opracowany i teraz możesz używać Ctrl+ Shift+ C/ Vdo kopiowania / wklejania w Windows 10 Insider build # 17643.

Musisz włączyć opcję „Użyj Ctrl + Shift + C / V jako Kopiuj / Wklej” na stronie właściwości „Opcje” konsoli:

wprowadź opis zdjęcia tutaj

wymieniony w blogs.msdn.microsoft.com/

αғsнιη
źródło
5
2018 tutaj, nie widzę tego w produkcji (pełne Windows 10 z Ubuntu z App Store). westchnienie.
metodignature
Skąd wiesz, na czym opiera się system Windows? Nie widzę tej opcji.
Todd Freed,
2
wpisz Run / Start, winver@methodsignature
αғsнιη
1
Zgodnie z powyższym postem na blogu, ten pierwszy dostarczony w kompilacji Insider Win10 17643, i zostanie uwzględniony w aktualizacji Fall 2018, wysyłka „wkrótce” ™;)
Rich Turner
1
@methodsignature Znaleziono tę funkcję w systemie Windows 10 (1809). Spróbuj zaktualizować teraz swój system Windows.
Nafeez Abrar
19

Nareszcie z radością ogłaszamy, że NAPRAWDĘ wdrożyliśmy obsługę kopiowania i wklejania instancji Linux / WSL w konsoli Windows za pomocą CTRL+ SHIFT+ [ C| V]!

Możesz włączyć / wyłączyć tę funkcję w przypadku znalezienia kolizji klawiatury z aplikacją wiersza polecenia, ale powinno to zacząć działać po zainstalowaniu i uruchomieniu dowolnej kompilacji Win10> = 17643.

Nowe właściwości konsoli pokazujące opcję CTRL + SHIFT + C / V

Dziękujemy za cierpliwość podczas przeprojektowywania elementów wewnętrznych konsoli, aby ta funkcja działała :)

Rich Turner
źródło
1
Jak sprawdzić bieżącą wersję kompilacji i wymusić aktualizację, jeśli jej nie widzę
Jacob Goulden
2
Aby znaleźć bieżącą wersję systemu Windows, uruchom winverz okna dialogowego uruchamiania lub wiersza polecenia. Aby uzyskać wczesny dostęp do tych i innych funkcji podczas ich tworzenia, musisz zarejestrować się w programie Windows Insider Program; szczegóły tutaj: insider.windows.com/en-us
Rich Turner
@RichTurner dzięki za to - wiedziałem, że ta funkcja istnieje, ale bardzo trudno było zobaczyć dołączony do niej minimalny numer wersji. Wygląda na to, że będę musiał dokonać aktualizacji, aby uzyskać dostęp :)
Ian Clark
1
@NafeezAbrar - Wpis na blogu zaczyna się od „W Windows 10 Insider build # 17643” - 1803 był kompilacją 17682. Ta funkcja będzie dostępna w kompilacjach> = 17643, co prowadzi do ogólnej wersji aktualizacji Windows 10 Fall 2018 Update.
Rich Turner,
1
@Nafeez Abrar: Dobrze słyszeć. Dziękujemy za poinformowanie nas :)
Rich Turner,
17

Możesz użyć AutoHotkey (aplikacja innej firmy), poniższe polecenie jest dobre dla zwykłego tekstu alfanumerycznego, jednak niektóre inne znaki, takie =^"%#!jak bash lub cmd, są niepoprawnie wpisane w konsoli. (W każdym oknie innym niż konsola to polecenie działa poprawnie ze wszystkimi znakami.)

^+v::SendRaw %clipboard%
Fernando Rodriguez
źródło
Próbowałem użyć ^#vjako Ctrl+Shift+V, ale to nie działało, ponieważ ^#v oznacza Ctrl+WinKey+V. Powinieneś użyć ^+v, co oznacza Ctrl+Shift+V.
użytkownik
Mimo że wymaga programu innej firmy, wydaje się to normalne, aby system Windows i tak był użyteczny. Myślę, że to najlepsza odpowiedź, ponieważ pozwala zachować skrót klawiaturowy, do którego przywykłeś
Erin Drummond
1
Używam, +Insponieważ ^+vkoliduje z dowolnym programem, który już używa tego do innych celów w niektórych kontekstach, takich jak nano „przeskocz do ostatniej linii”. Muszę jeszcze znaleźć coś używającego shift + insert do różnych celów.
chx
6
A dla tych, którzy chcą, aby wklejać natychmiast, a nie jedną postać na raz:^+v::SendInput %clipboard%
Jeremy Bernier
Działa dziwnie, zamienia /wykres na, |więc ścieżki /a/b/czamieniają się w|a|b|c
Doctor Coder
12

Edytuj / Wklej z menu kontekstowego paska tytułu (dopóki nie naprawią skrótów klawisza sterującego)

kriogenyx
źródło
1
Jest to tymczasowe dobre rozwiązanie, ale dziwne, jak je wypuszczają bez najprostszych funkcji ..
Ghassan Zein
2
do kiedy dokładnie? jest styczeń 2018 r. i nie naprawili jeszcze skrótów klawiszowych. to jest w aktualizacji twórców.
Paul Vixie,
Najwyraźniej nowsze wersje systemu Windows 10 stały się dostępne publicznie później w 2018 r. Lub na początku 2019 r. Ale aktualizacja nie nastąpiła automatycznie. Przejdź do Ustawień, Windows Update i kliknij Sprawdź aktualizacje.
MarkHu
10

Jak napisano wcześniej:

  • Kliknij prawym przyciskiem myszy Bash na Ubuntu na Windows Ikona, jeśli masz go na ikonie skrótu paska zadań
  • Kliknij Właściwości
  • Wybierz kartę Opcje w oknie właściwości
  • Zaznacz opcję QuickEditMode
  • Kliknij Zastosuj

Teraz możesz otworzyć nowy terminal Bash i po prostu użyj prawego przycisku myszy, aby wkleić

Aby móc kopiować z terminala, po prostu użyj CTRL + M, a to pozwoli ci zaznaczyć i skopiować zaznaczony tekst.

Ilhicas
źródło
9

Jak powiedzieli inni, istnieje teraz opcja Ctrl+Shf+Vwklejania w kompilacji Windows 10 Insider # 17643.

Niestety nie ma tego w mojej pamięci mięśni i jako użytkownik terminali TTY chciałbym używać Shf+Instak jak na wszystkich urządzeniach Linux, z którymi się łączę.

Jest to możliwe w systemie Windows 10, jeśli zainstalujesz ConEmu, który otacza terminal nowym GUI i pozwala Shf+Insna wklejanie. Pozwala również dostosować zachowanie we właściwościach.

Konsola wygląda następująco:Konsola ConEmu

Opcje kopiowania:Właściwości kopiowania ConEmu

Opcje wklejania:Właściwości pasty ConEmu

Shf+Insdziała po wyjęciu z pudełka. Nie pamiętam, czy musisz skonfigurować bash jako jedną z używanych przez niego powłok, ale jeśli tak, oto właściwości zadania, aby go dodać:Właściwości zadania ConEmu Bash

Pozwala również na kartach Konsole (z uwzględnieniem różnych typów cmd.exe, powershelletc). Korzystam z tego od wczesnego systemu Windows 7 i w tamtych czasach sprawiło, że wiersz poleceń w systemie Windows był użyteczny!

Stuart Brock
źródło
2
Chociaż to rozwiązanie jest dość ciężkie dla funkcji, która naprawdę powinna być zintegrowana z Windows Bash (i wkrótce będzie dostępna z kompilacją 17643?), Dała mi Shift+Insdo wklejenia, nawet nie zakłócając ustawień. Ponadto jestem podekscytowany, aby sprawdzić aplikację, co jeszcze oferuje.
Craig Silver,
Dziękuję za komentarz. Z tego, co mogę powiedzieć, Shf+Insnie będzie dostępny w kompilacji 17643 - tylko Shf+Ctrl+V. Używam Shf+Inskażdego dnia, więc nie chciałem uczyć się alternatywnego naciskania klawiszy.
Stuart Brock,
1
Dzięki za to brakuje mi shf + Ins, odkąd rzuciłem cygwin na korzyść WSL. I naprawdę podoba mi się ta aplikacja na więcej niż tylko to.
low351
4

Aby wkleić Vima w terminalu (bash na Ubuntu w Windows):

export DISPLAY=localhost:0.0

Nie wiem jednak, jak skopiować z Vima :-(

Jon49
źródło
1
DISPLAYnie ma absolutnie nic wspólnego z vimkopiowaniem i wklejaniem.
Felipe Alvarez
@FelipeAlvarez Najwyraźniej to zadziałało dla mnie. Daj mi znać, jeśli znajdziesz lepsze rozwiązanie!
Jon49
@ Jon49, Czy możesz wyjaśnić, co to robi? Umieszczasz to w .vimrc? lub w vimie: eksport DISPLAY = localhost: 0.0
alpha_989
@ alpha_989, To idzie do terminala Ubuntu. Wierzę, że jakoś łączy Ubuntu i Windows. Minęło trochę czasu, więc nie pamiętam wszystkich szczegółów.
Jon49
3

Alternatywne rozwiązanie tutaj, moja domowa wersja Windows Podsystem Windows Terminal Linux nie ma właściwości do używania Shift + Ctrl (C | V)

Użyj rzeczywistego terminala linux ! [wprowadź opis obrazu tutaj] 1

  • Zainstaluj serwer X w systemie Windows (np. X-Ming)
  • sudo apt install <your_favorite_terminal>
  • export DISPLAY=:0
  • odpal aplikację terminalową, testowałem z terminalem xfce4 i terminalem gnome

windows #ubuntu #development

Gubatron
źródło
1

możesz mieć bash, ale nadal jest to menedżer okien systemu Windows. Zaznacz tekst w oknie terminala bash. Kliknij prawym przyciskiem myszy pasek tytułu, wybierz „Edytuj”, wybierz „Kopiuj”, teraz kliknij ponownie prawym przyciskiem myszy na pasku tytułu, wybierz „Edytuj”, wybierz „Wklej”, gotowe. Powinieneś być w stanie zaznaczyć tekst Highlite, nacisnąć „Enter”, a następnie Control V, ale wygląda na to, że jest zepsuty

Colin MacKenzie - III
źródło
To, co opisujesz jako zepsute dźwięki, jakbyś nie miał włączonego trybu szybkiej edycji w ustawieniach konsoli
Steve Goossens,
1

W przypadku zwykłego kopiowania (ewentualnie długich) tekstów do schowka systemu Windows , stwierdziłem, że samo przesyłanie danych wyjściowych do clip.exe (w tym .exerozszerzenie pliku) działa dla mnie dobrze. Więc:

$ echo "Hello World" | clip.exe

pozwala mi wklejać Hello Worldza pomocą Ctrl- Vgdziekolwiek indziej.

Teraz, kiedy to opublikowałem, zauważam, że powiązane pytanie Pipe ze schowka w systemie Linux dla systemu Windows obejmuje to i rozwiązanie poleceń do wklejania ze schowka Windows .

ojdo
źródło
0

To okazało się dość proste. Mam to od czasu do czasu. Aby wkleić tekst, wystarczy kliknąć prawym przyciskiem myszy w dowolnym miejscu w oknie terminala.

verymax
źródło
Nie. Nic nie robi.
Hippyjim