MC, 00:22 piątek, 13.07.2012 r.
Ilustracja do artykułu: Linux XClip i obsługa schowka systemowego w terminalu

Linux XClip i obsługa schowka systemowego w terminalu

Chciałbym w tym artykule zaprezentować bardzo przydatny a przy tym prosty program, który umożliwi nam obsługę schowka systemowego, a także tego działającego tylko w obrębie terminala, a wszystko to z wiersza poleceń. Programem tym jest XClip.

O czym mowa?

Najpierw powinienem wytłumaczyć, co mam na myśli, mówiąc o schowku działającym w obrębie danego terminala. Prostymi słowami mówiąc, chodzi o schowek, z którego możemy skorzystać w danej konsoli, ale do którego nie mamy dostępu z innych okien, dowolnych programów. Oczywiście schowek systemowy dostępny we wszystkich programach systemu również będziemy mogli obsłużyć i to właśnie z pozycji wiersza poleceń, co jest tak atrakcyjną możliwością. A dlaczego? Z tego prostego powodu, że zawartość schowka możemy przekierowywać bezpośrednio do innych programów i vice versa.

Schowek w obrębie terminala

Jeśli interesuje nas obsługa schowka jedynie dla potrzeb jednego okna terminala, wystarczy nam najbardziej podstawowa znajomość programu XClip. Przejdźmy do razu do przykładów. Zawartość schowka ustalamy, po prostu przekierowując treść na strumień wejścia programu. Dla przykładu:
echo "Jakaś treść do skopiowania" | xclip
Po takim wywołaniu xclip będzie przechowywał dla nas wskazany tekst. Jeśli zaś przyjdzie nam użyć tego tekstu, wystarczy wywołać program xclip z flagą -o (-out) i przekierować strumień wyjściowy, np.:
$ xclip -o | cat
Jakaś treść do skopiowania

Obsługa schowka systemowego (X-ów)

Jeżeli zaś potrzebujemy skopiować jakąś treść do schowka, którego będziemy mogli użyć również w innych programach (np. wkleić ją do programów edycji tekstu takich jak GEdit itp.), musimy wskazać programowi XClip, jakiego schowka ma użyć. Spójrzmy na poniższe wywołanie:
echo "Treść dostępna w dla każdego innego programu" | xclip -sel clip
Flaga -sel z parametrem clip zaowocuje tym, że wskazany tekst będziemy mogli wkleić w dowolnym programie, na przykład używając skrótu Ctrl + V. Oczywiście możliwa jest sytuacja odwrotna, w której mamy już jakiś tekst skopiowany do schowka a w terminalu chcemy go przesłać do innego programu. Jak pewnie nietrudno się już domyślić, może tego dokonać np. tak:
$ xclip -sel clip -o | cat
Tekst skopiowany do schowka w innym programie

Skąd pobrać program XClip?

Program XClip znajduje się w domyślnych repozytoriach, więc wystarczy wydać polecenie:
sudo apt-get install xclip
I cieszyć się nieocenioną możliwością obsługi schowka z pozycji wiersza poleceń.

Komentarze (2)

Imię:
Treść:
Administrator 2017-06-02 20:30:20
@niekumaty, dziękuję za komentarz i zapraszam do lektury innych artykułów. Pozdrawiam.
niekumaty 2017-06-02 18:21:38
Fantastyczny artykuł, właśnie tego szukałem. Dzięki wielkie.