cygwin polecenie, aby skopiować do schowka systemu Windows


83

Widzę tutaj:

http://www.pgrs.net/2008/1/11/command-line-clipboard-access

że w Linuksie i Osx istnieje sposób na skopiowanie do schowka z wiersza poleceń. Więc uruchomiłem mój cygwin setup.exe, ale nie mogłem znaleźć pakietu xsel. Zgaduję, że może ten pakiet nie został przeniesiony do systemu Windows? Wygląda na to, że w systemie Windows jest narzędzie do zrobienia tego:

http://www.labnol.org/software/tutorials/copy-dos-command-line-output-clipboard-clip-exe/2506/

Chyba spróbuję - ale w międzyczasie pomyślałem, że zapytam, czy ktoś znalazł dobre rozwiązanie.

Odpowiedzi:


67

Na podlinkowanej stronie znajdują się komentarze podpowiadające, jak to zrobić w systemie Windows:

W systemie Windows Cygwin zawiera getclip i putclip, które wykonują to samo zadanie.


16
Jeśli nie masz tych dostępnych, musisz zainstalować cygutils-extrapakiet ( src ). Co ciekawe Babun domyślnie pomija ten pakiet.
chrnola

160

Cygwin zawiera specjalny plik urządzenia o nazwie /dev/clipboard:

echo foobar > /dev/clipboard  # Puts "foobar\n" on the clipboard
cat /dev/clipboard  # Pastes clipboard to stdout

3
to również działa, ale myślę, że nie mogę zaakceptować 2 różnych odpowiedzi
andersonbd1

5
Jest to lepsze niż getclip / putclip, ponieważ nie wymaga instalacji pakietu.
Stabledog

8
Zaletą getclip / putclip nad / dev / clipboard jest to, że te pierwsze mają opcje konwersji między końcówkami linii unix i dos.
esquifit

8
Zaletą / dev / clipboard jest to, że obsługuje UTF8, podczas gdy getclip / putclip nie.
Maximilian Hils

2
Łatwo jest tworzyć elementy putclipzawierające cat - >/dev/clipboardi getclipzawierające cat /dev/clipboardaliasy, funkcje lub skrypty, w zależności od tego, co Ci się podoba. Oczywiście możesz użyć dowolnej pary nazw skryptów. Na przykład komputery Mac mają pbcopyi pbpasteumieszczają i pobierają informacje z tablicy (schowka).
Jonathan Leffler

28

Druga odpowiedź powyżej

Aby umieścić tekst w schowku systemu Windows

putclip < foo.txt

Aby przesłać do pliku dowolny tekst znajdujący się w schowku systemu Windows

getclip > foo.txt

@Adrian Dzięki, że zauważyłeś moje bezużyteczne wykorzystanie kota. Mam tendencję do nadużywania kota zamiast tylko rur. Zaktualizowałem odpowiedź.


12

co po prostu

clip < file.extension

właśnie próbowałem użyć mojego klucza SSH


1
clip.exezostał wprowadzony w systemie Windows Vista, więc tak, możesz go również używać, ale opcje są ograniczone.
RobSiklos


2

Niezupełnie Ditto, ale tutaj jest rejestrator clibboard.

#!/usr/bin/ksh
while true
do
    if [[ "$(</dev/clipboard)" = "${LastClip}" ]]
    then
            sleep 2
    else
            LastClip="$(</dev/clipboard)"
            echo "$(</dev/clipboard)" >> $HOME/cliplog.txt
            sleep 1
    fi
done
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.