pbcopy i pbpaste: manipulowanie schowkiem z poziomu linii poleceń

Kopiowanie i wklejanie jest jedną z najczęściej wykonywanych akcji przez użytkowników komputera. Narzędzia pbcopy i pbpaste znajdujące się w MacOS pozwalają te zadania wykonywać z poziomu linii komend. Możemy bezpośrednio wstawiać do schowka zawartość pliku czy rezultat wykonania komendy, jak również wyświetlać zawartość schowka lub zapisać go do pliku. Przejdźmy przez kilka przykładów aby zaprezentować możliwości tego prostego narzędzia. 

Pbcopy

Zacznijmy od narzędzia pbcopy. Program kopiuje do schowka standardowe wejście. Przykłądowo jeśli chcemy skopiować fragment tekstu wykonujemy polecenie:

echo 'Przykładowy tekst' | pbcopy

Teraz możemy przejść do dowolnego innego programu i wkleić tekst (np. poprzez wciśnięcie Command+V). Zobaczymy, że został wklejony „Przykładowy tekst”.

Kopiowanie zawartości pliku

Zawartość pliku możemy skopiować wpisując polecenie:

pbcopy < lipsum.txt

lub używając polecenia cat i pipea:

cat lipsum.txt | pbcopy

Kopiowanie wyniku wykonania polecanie

Załóżmy, że chcemy skopiować wynik polecenia ps aux, wystarczy użyć pipa i przekazać wyjście komendy do polecenia pbcopy:

ps aux | pbcopy

Użycie pbpaste

To polecenie wypisuje na standardowe wyjście zawartość schowka. A więc kopiujemy coś, a następnie wydajemy polecenie pbpaste w konsoli i zostanie to wypisane na ekran. Możemy połączyć to z pbcopy kopiując zawartość pliku a następnie ją wypisując na terminal:

michal@: cat lipsum.txt| pbcopy
michal@: pbpaste
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec tristique lorem sed tincidunt fringilla. Donec efficitur lorem sit amet elit imperdiet, non congue libero ornare. Mauris dignissim magna non ipsum eleifend cursus. Nullam sodales nunc sed nulla aliquam egestas. Sed lacinia vulputate pretium. Pellentesque ultrices massa sit amet lacus pretium, vitae convallis sapien vestibulum. Duis tempus mi eget faucibus blandit. Nam dapibus id metus gravida mollis. Sed id neque non tellus elementum vehicula. Maecenas non bibendum quam. Etiam enim libero, ultricies ac est eu, cursus mollis nibh. Praesent malesuada vehicula imperdiet. Ut in ultricies risus, quis posuere erat.

Tak samo jak w poprzednim przypadku możemy użyć pipa do przekazania zawartości schowka na wejście kolejnego polecenia, na przykład:

michal@: pbpaste | grep ipsum
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec tristique lorem sed tincidunt fringilla. Donec efficitur lorem sit amet elit imperdiet, non congue libero ornare. Mauris dignissim magna non ipsum eleifend cursus. Nullam sodales nunc sed nulla aliquam egestas. Sed lacinia vulputate pretium. Pellentesque ultrices massa sit amet lacus pretium, vitae convallis sapien vestibulum. Duis tempus mi eget faucibus blandit. Nam dapibus id metus gravida mollis. Sed id neque non tellus elementum vehicula. Maecenas non bibendum quam. Etiam enim libero, ultricies ac est eu, cursus mollis nibh. Praesent malesuada vehicula imperdiet. Ut in ultricies risus, quis posuere erat.

Zapis zawartości schowka do pliku

Możemy zapisać zawartość naszego schowka do pliku, wystarczy użyć polecenia:

michal@: pbpaste > test.txt

Podsumowanie

To w zasadzie wszystko. Dwa bardzo użyteczne polecenia które mogą nam ułatwić codzienną pracę. 

Michał Autor

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

This site uses Akismet to reduce spam. Learn how your comment data is processed.