Błąd „zły adres” podczas uzyskiwania dostępu do / dev / schowka w Cygwin


2

Lubię używać / dev / clipboard do łatwego przenoszenia zawartości między Windows a narzędziami wiersza poleceń Cygwin. Wygląda jednak na to, że Cygwin ma problemy z dużą zawartością schowka. Występuje taki błąd, gdy próbuję uzyskać dostęp do / dev / schowka po skopiowaniu dużej ilości tekstu po stronie systemu Windows:

$ wc -c /dev/clipboard
wc: /dev/clipboard: Bad address
573440 /dev/clipboard

Czy dla schowka jest ustalony rozmiar bufora, który mogę w jakiś sposób zwiększyć? A może to zupełnie inna kwestia?


Ile kosztuje w twoim przypadku, tj. O jaką ilość danych walczy? Powyższy przykład pokazuje ~ 560 kB, ale właśnie próbowałem z 8 megabajtami i wydawało się, że działa dobrze. Ponadto, po prostu z ciekawości, można spróbować użyć getclipi putclipzamiast obchodzenia się z /dev/clipboardurządzeniem i sprawdzić, czy to czyni żadnej różnicy? Wątpię, prawdopodobnie robią dokładnie to samo, ale jestem ciekawy. cat large.txt | putclip ; getclip | wc -c
Costa

Przez chwilę bawiłem się w Notatniku i odkryłem, że przy 16384 znakach działa dobrze. Składający się z 16385 znaków, zrywa z błędem „Zły adres”. Próbowałem jednak getclip i putclip, a te działały poprawnie nawet z 100 MB tekstu! Wpisz to jako odpowiedź, a ja to zaakceptuję.
John Sprad,

Odpowiedzi:


0

Nie jestem pewien, dlaczego /dev/clipboardurządzenie jest dla ciebie problematyczne, ale wiem, że korzystanie z narzędzi putclipi getclippowinno być w stanie obsłużyć to zadanie. Regularnie używam ich z danymi o wartości wielu megabajtów i nigdy nie miałem żadnych problemów.

$ cat large.txt | putclip

$ getclip | wc -c
8665361

Pochodzą z cygutilspakietem ... http://cygwin.com/packages/cygutils/

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.