如何在Linux上使用pbcopy和pbpaste命令
由于 Linux 和 Mac OS X 是基于 *Nix 的系统,因此许多命令可以在两个平台上运行。但是,某些命令可能在两个平台上都没有,比如 pbcopy 和 pbpast。这些命令仅在 Mac OS X 平台上可用。pbcopy 命令将标准输入复制到剪贴板。然后,你可以在任何地方使用 pbpaste 命令粘贴剪贴板内容。当然,上述命令可能有一些 Linux 替代品,例如 xclip。 xclip 与 pbcopy 完全相同。但是,从 Mac OS 切换到 Linux 的发行版的人将会找不到这两个命令,不过仍然想使用它们。别担心!这个简短的教程描述了如何在 Linux 上使用 pbcopy 和 pbpaste 命令。
安装 xclip / xsel
就像我已经说过的那样,Linux 中没有 pbcopy 和 pbpaste 命令。但是,我们可以通过 shell 别名使用 xclip 和/或 xsel 命令复制 pbcopy 和 pbpaste 命令的功能。xclip 和 xsel 包存在于大多数 Linux 发行版的默认存储库中。请注意,你无需安装这两个程序。只需安装上述任何一个程序即可。
要在 Arch Linux 及其衍生产版上安装它们,请运行:
$ sudo pacman xclip xsel
在 Fedora 上:
$ sudo dnf xclip xsel
在 Debian、Ubuntu、Linux Mint 上:
$ sudo apt install xclip xsel
安装后,你需要为 pbcopy 和 pbpaste 命令创建别名。为此,请编辑 ~/.bashrc:
$ vi ~/.bashrc
如果要使用 xclip,请粘贴以下行:
alias pbcopy='xclip -selection clipboard'
alias pbpaste='xclip -selection clipboard -o'
如果要使用 xsel,请在 ~/.bashrc 中粘贴以下行。
alias pbcopy='xsel --clipboard --input'
alias pbpaste='xsel --clipboard --output'
保存并关闭文件。
接下来,运行以下命令以更新 ~/.bashrc 中的更改。
$ source ~/.bashrc
ZSH 用户将上述行粘贴到 ~/.zshrc 中。
在 Linux 上使用 pbcopy 和 pbpaste 命令
让我们看一些例子。
pbcopy 命令将文本从 stdin 复制到剪贴板缓冲区。例如,看看下面的例子。
$ echo "Welcome To OSTechNix!" | pbcopy
上面的命令会将文本 “Welcome to OSTechNix” 复制到剪贴板中。你可以稍后访问此内容并使用如下所示的 pbpaste 命令将其粘贴到任何位置。
$ echo `pbpaste`
Welcome To OSTechNix!

以下是一些其他例子。
我有一个名为 file.txt 的文件,其中包含以下内容。
$ cat file.txt
Welcome To OSTechNix!
你可以直接将文件内容复制到剪贴板中,如下所示。
$ pbcopy < file.txt
现在,只要你用其他文件的内容更新了剪切板,那么剪切板中的内容就可用了。
要从剪贴板检索内容,只需输入:
$ pbpaste
Welcome To OSTechNix!
你还可以使用管道字符将任何 Linux 命令的输出发送到剪贴板。看看下面的例子。
$ ps aux | pbcopy
现在,输入 pbpaste 命令以显示剪贴板中 ps aux 命令的输出。
$ pbpaste

使用 pbcopy 和 pbpaste 命令可以做更多的事情。我希望你现在对这些命令有一个基本的想法。
就是这些了。还有更好的东西。敬请关注!
如何在Linux上使用pbcopy和pbpaste命令的更多相关文章
- 如何在Linux上通过grub添加内核参数
转自Linux中国 我们可以在linux内核启动时为其提供各种各样的参数.这些参数可以自定义内核默认的行为,或者通知内核关于硬件的配置信息.内核参数应在内核启动时通过引导装载程序,如GRUB或LILO ...
- 如何在Linux上使用VIM进行.Net Core开发
对于在Linux上开发.Net Core的程序员来说, 似乎都缺少一个好的IDE. Windows上有Visual Studio, Mac上有Visual Studio for Mac, 难道Linu ...
- 如何在 Linux 上复制文件/文件夹到远程系统?
从一个服务器复制文件到另一个服务器,或者从本地到远程复制是 Linux 管理员的日常任务之一. 我觉得不会有人不同意,因为无论在哪里这都是你的日常操作之一.有很多办法都能处理这个任务,我们试着加以概括 ...
- springboot打成的jar包如何在Linux上持久运行
一.首先说说在没有springboot的时候,项目是如何部署的? 1.动态web项目 动态web项目部署很方便,基本上上传文件到服务器的tomcat里面的webapps文件夹下即可完成部署.当然了,这 ...
- 如何在Linux上清理内存缓存、缓冲与交换空间
如何在Linux上清理内存缓存.缓冲与交换空间 与其他类型的操作系统一样,GNU/Linux已经有效的实现了内存管理,甚至更加优秀.但是如果任何进程正在吃光你的内存,并且你想清理它,Linux提供了一 ...
- 如何在 Linux 上设置密码策略
https://linux.cn/article-2518-1.html 用户帐号管理是系统管理员最重要的工作之一.而密码安全是系统安全中最受关注的一块.在本教程中,我将为大家介绍如何在 Linux ...
- 如何在 Linux 上安装应用程序
如何在 Linux 上安装应用程序 编译自:https://opensource.com/article/18/1/how-install-apps-linux作者: Seth Kenlon原创:LC ...
- [转帖]如何在Linux上使用命令行查看硬件信息
如何在Linux上使用命令行查看硬件信息 时间:2016-01-13 作者:admin 分类:新手入门 阅读:126次 http://embeddedlinux.org.cn/emb-linux/ ...
- 如何在Linux上创建,列出和删除Docker容器
本篇文章介绍的内容是关于在Linux机器上创建,列出和删除docker容器,下面我们来看具体的内容. 1.启动Docker容器 使用下面的命令启动新的Docker容器.这将启动一个新的容器,并为你提供 ...
- 关于如何在Linux上使用Nugix反向代理部署net core3.1项目
本文意在教大家如何在Linux上部署net core web项目,本人通过实践已经成功可以通过外网访问我部署在阿里云服务器上的站点. 一:需要用到的东西如下: 1:一个基于net core框架下的we ...
随机推荐
- Linux:/proc/meminfo参数详细解释
Linux:/proc/meminfo参数详细解释 一.Linux内存总览图 二.meminfo参数的详细介绍 /proc/meminfo是了解Linux系统内存使用状况的主要接口,我们最常用的&qu ...
- 2024年8月中国数据库排行榜:OceanBase攀升再夺冠,达梦跃入三甲关
在这个炽热的季节,随着巴黎奥运会的盛大开幕,全球将目光聚集在了体育的无限魅力和竞技的巅峰对决上.如同奥运赛场上的激烈角逐,中国数据库界也上演着一场技术与创新的较量,各个数据库产品正在中国乃至全球舞台上 ...
- 巅峰对话在线研讨 Q&A:Oracle Database 21c vs openGauss 2.0新特性解读和架构演进
2021年11月11日,墨天轮<巅峰对话>栏目邀请到了两位数据库领域的巅峰人物:云和恩墨创始人盖国强老师,和来自清华大学计算机与技术系的李国良教授,为大家带来了在线研讨<Oracle ...
- dotnet 虚方法的使用
// 虚方法 // 作用:允许子类,进行重写,可以实现不一样的功能 // 特点:好维护 -- 不该变原方法(虚方法)情况下,可以直接使用虚方法或者重写虚方法 VirtualMethod method ...
- OOP的核心思想
1. 封装 既是信息封装,把一些信息进行封装成对象,只保留部分接口和方法与外部联系,能有效避免程序间相互依赖,实现代码模块间松藕合 : 2. 继承 子类自动继承父类的属性和方法,继承实现了代码的重用性 ...
- 05-react的类组件和函数组件 -- 状态 state
// 函数组件是无状态的 既没有数据的 类似 vue 组件中的 data 数据 // 类组件是有状态的组件 是有数据的 是双向绑定的数据 是数据驱动视图的 负责UI的视图更新 (单个组件的私有数据组件 ...
- KubeKey 离线部署 KubeSphere v3.4.1 和 K8s v1.26 实战指南
作者:运维有术 前言 知识点 定级:入门级 了解清单 (manifest) 和制品 (artifact) 的概念 掌握 manifest 清单的编写方法 根据 manifest 清单制作 artifa ...
- css动画效果(边框线条流动效果)
1.整体效果 https://mmbiz.qpic.cn/sz_mmbiz_gif/EGZdlrTDJa6FxrVbiamfvb7b0H4qcDzZRwq3PqvXfuMDaPZ44VUic1h2WR ...
- mongodb插入数据不能在vue显示
问题描述:当我们在命令行插入数据时,在MongoVUE却显示不了数据,并且查询有插入数据的数据库,如下图所示 网上资料说,这是引擎的问题,mongoDB3.2版本之后默认开启的存储引擎是wiredRi ...
- ESP8266 + MQTT + 土壤湿度传感器
ESP8266 + MQTT + 土壤湿度传感器 连线 #include <Arduino.h> #include <Ticker.h> #include <ESP826 ...