Как использовать команды Pbcopy и Pbpaste в Linux
Узнайте, как пользователи Linux могут копировать команды pbcopy и pbpaste с помощью программ Xclip и Xsel.
Поскольку Linux и Mac OS X являются системами на базе Unix, многие команды будут работать на обеих платформах. Однако некоторые команды уникальны и могут быть недоступны на обеих платформах, например команды pbcopy и pbpaste. Эти команды доступны исключительно на платформе macOS.
Те, кто перешел с macOS на Linux, могут почувствовать отсутствие этой пары команд и, вероятно, предпочтут продолжать использовать их в системе Linux. Не волнуйтесь! Если вы перешли с macOS на Linux и вам не хватает pbcopy
и pbpaste
, у меня есть решение, позволяющее реализовать аналогичные функции в Linux.
В этом кратком руководстве я объясню, как воспроизвести функции pbcopy
и pbpaste
и использовать команды Pbcopy и Pbpaste в системе Linux.
Что такое команды pbcopy и pbpaste?
Pbcopy и Pbpaste — это две утилиты командной строки в macOS, которые позволяют копировать текст в буфер обмена и из него. Они похожи на знакомые сочетания клавиш ⌘+C
и ⌘+V
, но их можно использовать из внутри терминала.
Команда pbcopy
скопирует стандартный ввод в буфер обмена. Затем вы можете вставить содержимое буфера обмена с помощью команды pbpaste
в любое место.
Вот несколько примеров использования pbcopy и pbpaste:
Скопируйте текст «Привет, мир!» в буфер обмена:
pbcopy echo "Welcome to OSTechNix blog!"
Вставьте содержимое буфера обмена в новый файл:
pbpaste > mynewfile.txt
Скопируйте вывод команды ls в буфер обмена:
ls | pbcopy
Хотя pbcopy и pbpaste доступны специально для систем macOS, существует ряд альтернатив pbcopy и pbpaste для Linux, таких как xclip и xsel.
Внимание! Символ ⌘
, также известный как квадрат с петлей, является символом командной клавиши на клавиатурах Apple.
Что такое команды xclip и xsel?
Xclip — это интерфейс командной строки для выбора X, например, буфера обмена. Xclip считывает данные из одного или нескольких файлов и делает данные доступными в виде выбора X для вставки данных в приложения X.
Xsel — это также инструмент выбора X11 из командной строки и управления буфером обмена. Он используется для доступа к буферу обмена X и буферам выбора в Linux и Unix-подобных операционных системах.
Более подробную информацию об использовании xclip и xsel в Linux можно найти в следующем руководстве.
Как получить доступ к содержимому буфера обмена с помощью Xclip и Xsel в Linux
Используя программы xclip или xsel, мы можем легко имитировать функциональность команд pbcopy и pbpaste в Linux.
Установите xclip и xsel в Linux
Пакеты xclip и xsel доступны в репозиториях по умолчанию большинства дистрибутивов Linux. Обратите внимание, что вам не обязательно устанавливать обе утилиты. Просто установите любую из вышеперечисленных утилит.
Чтобы установить их в Arch Linux и его производных, запустите:
sudo pacman -S xclip xsel
В Федоре:
sudo dnf install xclip xsel
В Debian, Ubuntu, Linux Mint:
sudo apt install xclip xsel
После установки вам необходимо создать псевдонимы для команд pbcopy
и pbpaste
.
Создайте псевдонимы для pbcopy и pbpaste.
Мы можем воспроизвести функциональность команд pbcopy и pbpaste, используя команды xclip и/или xsel через псевдонимы оболочки. Давайте посмотрим, как это сделать!
1. Отредактируйте файл ~/.bashrc
:
vi ~/.bashrc
2. Если вы хотите использовать xclip, вставьте следующие строки:
alias pbcopy='xclip -selection clipboard'
alias pbpaste='xclip -selection clipboard -o'
3. Если вы хотите использовать xsel, вставьте следующие строки в свой файл ~/.bashrc
.
alias pbcopy='xsel --clipboard --input'
alias pbpaste='xsel --clipboard --output'
4. После добавления указанных выше строк нажмите ESC и :wq
, чтобы сохранить и закрыть файл.
5. Затем выполните следующую команду, чтобы обновить изменения в файле ~/.bashrc
.
source ~/.bashrc
6. Пользователи ZSH вставляют приведенные выше строки в файл ~/.zshrc
и обновляют изменения с помощью команды:
source ~/.zshrc
Используйте команды Pbcopy и Pbpaste в Linux
Как уже упоминалось. команда pbcopy
скопирует текст из стандартного ввода в буфер обмена. Например, взгляните на следующий пример.
echo "Welcome To OSTechNix!" | pbcopy
Приведенная выше команда скопирует текст «Добро пожаловать в OSTechNix» в буфер обмена. Вы можете получить доступ к этому содержимому позже и вставить его куда угодно, используя команду pbpaste
, как показано ниже.
echo `pbpaste`
Welcome To OSTechNix!
Команды pbcopy и pbpaste в действии
Вот еще несколько вариантов использования.
У меня есть файл с именем file.txt
со следующим содержимым.
$ cat file.txt
Welcome To OSTechNix!
Вы можете напрямую скопировать содержимое файла в буфер обмена, как показано ниже.
pbcopy < file.txt
Теперь содержимое файла доступно в буфере обмена, если вы обновили его содержимым другого файла.
Чтобы получить содержимое из буфера обмена, просто введите:
$ pbpaste
Welcome To OSTechNix!
Вы также можете отправить вывод любой команды Linux в буфер обмена, используя символ конвейера. Посмотрите на следующий пример.
ps aux | pbcopy
Теперь введите команду «pbpaste
» в любой момент, чтобы отобразить вывод команды «ps aux
» из буфера обмена.
pbpaste
Команда pbpaste в действии
С помощью команд Pbcopy и Pbpaste вы можете сделать гораздо больше. Надеюсь, теперь вы получили общее представление об этих командах.
Часто задаваемые вопросы
Часто задаваемые вопросы: Использование Xclip и Xsel в Linux в качестве альтернативы pbcopy и pbpaste.
Вопрос: Что такое pbcopy и pbpaste и почему они недоступны в Linux?
О: pbcopy
и pbpaste
— это команды в macOS для копирования и вставки текста через командную строку. Они недоступны в Linux. Эти команды специфичны для macOS.
Вопрос: Что такое Xclip и Xsel?
О: Xclip и Xsel — это инструменты командной строки Linux, которые повторяют функциональность pbcopy
и pbpaste
. Они позволяют эффективно копировать и вставлять текст между командной строкой и буфером обмена.
Вопрос: Как мне установить Xclip и Xsel в моей системе Linux?
О: Вы можете установить Xclip и Xsel с помощью менеджера пакетов. Например, в системах на базе Debian, таких как Ubuntu, вы можете использовать sudo apt-get install xclip xsel
.
Вопрос: Как скопировать текст в буфер обмена с помощью Xclip?
О: Чтобы скопировать текст из файла в буфер обмена, используйте: cat file.txt | xclip — буфер обмена выделения
.
Вопрос: Как вставить текст из буфера обмена с помощью Xclip?
О: Чтобы вставить текст из буфера обмена в терминал, используйте: xclip -selection clipboard -o
.
Вопрос: Могу ли я использовать Xclip и Xsel в macOS?
О: Да, можете, но чаще всего они используются в системах Linux. macOS уже предоставляет встроенные команды pbcopy
и pbpaste
.
Вопрос: Являются ли команды для Xclip и Xsel такими же, как для pbcopy и pbpaste?
О: Нет, команды разные, но они служат схожим целям. Xclip и Xsel имеют собственный синтаксис для копирования и вставки текста.
Вопрос: Могу ли я использовать Xclip и Xsel для задач, выходящих за рамки простого копирования и вставки?
О: Да, вы можете использовать их в сценариях и автоматизации для более сложных задач, связанных с содержимым буфера обмена.
Вопрос: Есть ли другие альтернативы Xclip и Xsel для Linux?
О: Хотя Xclip и Xsel являются популярным выбором, вы также можете рассмотреть другие инструменты, такие как wl-clipboard
и clipman
. Они разработаны исключительно для систем Wayland.
Вопрос: Работают ли Xclip и Xsel в разных дистрибутивах Linux?
О: Да, Xclip и Xsel широко поддерживаются и работают в различных дистрибутивах Linux.
Заключение
Подводя итог, можно сказать, что хотя команды pbcopy и pbpaste удобны для управления буфером обмена на компьютерах Mac, пользователи Linux могут выполнять аналогичные задачи с помощью таких инструментов, как Xclip и Xsel. Эти инструменты позволяют плавно обрабатывать содержимое буфера обмена в Linux, упрощая работу с текстом. Таким образом, хотя названия команд могут меняться, основная идея улучшения работы с текстом остается неизменной независимо от того, используете ли вы macOS или Linux.
Связанное чтение:
- Доступ к содержимому буфера обмена с помощью Xclip и Xsel в Linux
- Копировать содержимое файла в буфер обмена, не отображая его в Linux