如何指定显示?

2024-04-19

当我通过 SSH 运行一些程序时,例如firefox &,我收到一个错误

Error: no display specified 

我想打开许多显示器,仍然显示stdout每个程序的。

最初的问题:如何指定显示以获得多显示节目?

Pablo Santa Cruz 给了我以下代码作为解决方案。 我不明白。

$ export DISPLAY=yourmachine.yourdomain.com:0.0

$ firefox &

什么是yourmachine and yourdomain.com在命令中?


X 的工作方式与任何网络程序的工作方式相同。您有一个在特定计算机上运行的某种描述的服务器(在本例中为 X 显示服务器),并且您有 X 客户端(如 Firefox)尝试连接到该服务器以显示其信息。

通常(在“家用”机器上),客户端和服务器在同一个机器上运行,并且只有一台服务器,但 X 足够强大,不需要发生这种情况。它从一开始就内置了服务器/客户端分离。

这使您可以做一些奇妙的事情,例如登录到地球另一端的盒子(以文本模式),告诉它显示服务器是您当前所在的盒子,瞧,窗口突然开始出现在本地。

为了让客户端与用户交互,它需要知道如何find服务器。有多种方法可以做到这一点。许多客户允许-display or --display指定它的选项:

xeyes -display paxbox1.paxco.com:0.0

许多人会使用DISPLAY如果没有专门给出显示,则为环境变量。您可以像其他变量一样设置此变量:

DISPLAY=paxbox1.paxco.com:0.0; export DISPLAY # in .profile
export DISPLAY=paxbox1.paxco.com:0.0 # in your shell
DISPLAY=paxbox1.paxco.com:0.0 firefox & # for that command (shell permitting)

第一部分DISPLAY变量只是显示服务器机器的地址。它遵循与任何其他 IP 地址相同的规则;它可以是可解析的 DNS 名称(包括localhost)或特定的 IP 地址(例如 192.168.10.55)。

第二部分是 X 特定的。它给出了要使用的 X“显示器”(X 服务器)编号和屏幕编号。第一个(显示器数量)通常是指包含一个或多个屏幕但具有单个键盘和鼠标(即一个输入流)的一组设备。屏幕编号通常给出该组内的特定屏幕。

一个例子是:

+----------------------------------------+
|paxbox1.paxco.com|                      |
+-----------------+                      |
|                                        |
|  +----------+----+  +----------+----+  |
|  |Display :0|    |  |Display :1|    |  |
|  +----------+    |  +----------+    |  |
|  |               |  |               |  |
|  | +-----------+ |  |               |  |
|  | |Screen :0.0| |  |               |  |
|  | +-----------+ |  |               |  |
|  | +-----------+ |  |               |  |
|  | |Screen :0.1| |  |               |  |
|  | +-----------+ |  |               |  |
|  | +-----------+ |  | +-----------+ |  |
|  | |Screen :0.2| |  | |Screen :1.0| |  |
|  | +-----------+ |  | +-----------+ |  |
|  | +-----------+ |  | +-----------+ |  |
|  | |Screen :0.3| |  | |Screen :1.1| |  |
|  | +-----------+ |  | +-----------+ |  |
|  | +-----------+ |  | +-----------+ |  |
|  | | Keyboard  | |  | |  Keyboard | |  |
|  | +-----------+ |  | +-----------+ |  |
|  | +-----------+ |  | +-----------+ |  |
|  | |   Mouse   | |  | |   Mouse   | |  |
|  | +-----------+ |  | +-----------+ |  |
|  +---------------+  +---------------+  |
|                                        |
+----------------------------------------+

这里你有一台机器(paxbox1.paxco.com)有两个显示服务器。第一个有四个屏幕,第二个有两个。那么可能性是:

DISPLAY=paxbox1.paxco.com:0.0
DISPLAY=paxbox1.paxco.com:0.1
DISPLAY=paxbox1.paxco.com:0.2
DISPLAY=paxbox1.paxco.com:0.3
DISPLAY=paxbox1.paxco.com:1.0
DISPLAY=paxbox1.paxco.com:1.1

取决于您希望实际窗口出现的位置以及您想要使用的输入设备。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何指定显示? 的相关文章

  • XMoveWindow 在 XMapWindow 之前无法工作

    我有一个窗口 我希望能够控制它的显示位置 然而 在调用 XMapWindow 之前调用 XMoveWindow 似乎没有任何效果 The docs什么也别说 帮助 In Xt创建窗口有 x 和 y 坐标 因此您可以在创建时指定位置 请注意
  • 使用 libx11 截屏

    我目前正在尝试使用 libx11 截屏 include
  • 如何在屏幕上的特定点找到窗口以进行屏幕截图/屏幕录制?

    我正在寻找一种方法来完成相当于 WindowFromPoint 和 GetWindowRect 在 Carbon Cocoa 和 X11 中所做的事情 窗口从点 http msdn microsoft com en us library m
  • 如何阻止 X Window 接收用户输入?

    我想在 Linux 桌面上创建一些窗口以用于简单的布局 我需要避免用户输入到这些窗口 并且我认为避免窗口获得焦点就足以实现这种情况 我认为我可以用xprop命令 通过设置WM HINTS属性 但我还没有找到有关如何执行此操作的具体文档 顺便
  • VTK 与真实 X 一起工作,与 Xvfb 一起崩溃

    我正在调试一个第 3 方 Python 脚本 该脚本使用 VTK 库实现无头图像处理 当使用常规 X 窗口会话运行时 它会按预期工作 窗口会瞬间闪烁 当针对 Xvfb 内存中的虚拟帧缓冲区 运行时 它会崩溃 脚本是这样的 省略了一些废话 i
  • 是什么导致 Jasper Reports 读取字体数据时抛出 java.io.IOException?

    我正在测试环境上运行一个进程 该进程需要 10 多个小时才能运行并使用 Jasper Reports v3 7 5 生成 PDF 文档 进程经常成功完成 但在某些情况下进程失败并抛出此异常 20 05 2017 02 45 23 503 E
  • 发送 X11 点击事件不适用于某些窗口

    以下代码片段在大多数情况下都有效 除了在某些窗口中 例如 在最新的 Ubuntu 下 它无法在文件资源管理器中选择文件夹 它似乎在其他地方都适用 但这个差距是巨大的 我怀疑这与我使用 XQueryPointer 的方式有关 但我已经尝试了几
  • 将 X11 窗口保持在另一个窗口之上

    我有两个 x11 窗口 它们需要在彼此之间保持一定的堆叠顺序 即一个窗口需要保持在另一个窗口之上 我不关心应用程序之外的其他窗口 通常 我会为此使用父 子窗口 但由于 X11 将子窗口剪辑到父窗口 所以我必须伪造它 我尝试了各种方法来保留和
  • 在 Linux 上用 C++ 移动鼠标指针失败

    我使用以下代码来隐藏和显示鼠标光标 XDefineCursor m display m window show None m hiddenCursor XFlush m display 效果很好 但是 当我运行这个时 XWarpPointe
  • 从键码获取键名称(X11 XGrabKey)

    我在 Linux 中有一个全局按键事件处理程序 如下所示 我需要知道哪个键盘被抓住了 例如 如果按下 P 键 我会得到相应的键代码 有没有办法从这个未签名的密钥代码中获取密钥名称 P include
  • 在 C 中使用 popen() 失败?

    我可以运行以下命令 xwd root xwdtopnm pnmtojpeg gt screen jpg 在 Linux 下的终端中 它将生成我当前屏幕的屏幕截图 我尝试使用代码执行以下操作 include
  • 将 QWidget 嵌入 X11 窗口

    我想将两个 QWidget 嵌入到使用 XLib 创建的窗口中 我写了这段代码 Assume all the necessary headers included int main int argc char argv QApplicati
  • Xlib XGetWindowProperty 返回零项

    我在读取某些 XWindow ICCCM 属性时遇到问题 问题实际上是当我尝试读取 NET WM STATUS 属性时 我正在使用的功能是 int get property value Display display Window wind
  • 在C中,如何使用X11获取屏幕内活动监视器的几何形状(x,y,宽度,高度)

    我所有的搜索都得到了关于如何使用 C 获取 X11 中活动屏幕的几何形状的答案 但该屏幕可能包含许多显示器 并且通常只有一个屏幕 除非有许多用户同时使用同一台计算机 关于获取屏幕几何形状的那些答案已经过时 因为它们没有考虑多个显示器 那么
  • X11原子XA_WM_NAME和“_NET_WM_NAME”有什么区别吗?

    与定义的原子有什么区别吗XA WM NAME定义于Xatom h那个人开始使用XInternAtom display NET WM NAME False 编辑 我制作了一个小程序来打印两者的整数值 我得到 NET WM NAME 312 X
  • 如何指定显示?

    当我通过 SSH 运行一些程序时 例如firefox 我收到一个错误 Error no display specified 我想打开许多显示器 仍然显示stdout每个程序的 最初的问题 如何指定显示以获得多显示节目 Pablo Santa
  • 从 XGrabKeyboard 中排除一些键

    考虑一个应用程序 需要在聚焦时抓住键盘 以便捕获所有窗口管理器命令 Alt F4 等 进行处理 现在 这有一个缺点 即当键盘被抓住时 用户无法通过键盘切换到另一个应用程序或虚拟桌面 我想要一个用户定义的组合键白名单 例如 用于切换虚拟桌面的
  • 使用 xlib 将图像加载到窗口上

    我已经创建了窗口类 我想插入图像作为该窗口的背景 文件格式必须为 png 我使用magick 的XImage来加载图像 但不知道如何将其作为我的窗口的背景 知道怎么做吗 使用创建像素图 Pixmap XCreatePixmap displa
  • Python:文本覆盖在所有窗口顶部,包括 Linux 中的全屏

    我正在尝试用 python 编写一个简单的脚本 在所有窗口和全屏应用程序之上输出文本 该脚本的目的是以类似于 Steam FPS 计数器工作方式的方式输出平均负载和可用内存 以及其他有用的统计数据 到目前为止 我尝试了 pygame 但据我
  • 如何使用 XIconifyWindow 更改任务栏图标?

    我在 Linux 中编程 并在桌面上使用 X11 我想更改任务栏中最小化窗口的图像 我正在使用 Fluxbox 当用户单击最小化窗口时 我当前正在使用 XIconifyWindow 当用户最小化任务栏中的小方形图标时 如何控制它 Thank

随机推荐

  • ViewModel 和 Service 类的实例化

    我试图理解 ViewModel 和 Service 类的实例化 并将其写下来供其他人使用 请在需要的地方更正 添加 ViewModel 和服务的实例化并不是以最常见的方式完成的 这是使用反射完成的 在 TipCalc 中 您有 public
  • 在特定日期触发 UILocalNotification

    我想开火UILocalNotification在特定日期 如果我使用这段代码 NSCalendar gregorian NSCalendar alloc initWithCalendarIdentifier NSGregorianCalen
  • 尝试理解 Pytorch 的 LSTM 实现

    我有一个包含 1000 个示例的数据集 其中每个示例都有5特征 a b c d e 我想喂7LSTM 的示例 以便它预测第 8 天的特征 a 阅读 nn LSTM 的 Pytorchs 文档 我得出以下结论 input size 5 hid
  • Akka 通过可堆叠行为拦截接收

    Akka 和 Scala 新手 请根据需要随意编辑问题 以便清楚地表达我在 Scala 和 Akka 领域的意图 在展示代码片段之前 这是我想要解决的问题 我本质上想开发一个通用模块 供我的团队在使用 Akka Actor 开发应用程序时使
  • Tcl正则表达式

    set d aa1 1 set d aa2 1 set d aa3 1 set d aa4 1 set d aa5 1 set d aa6 1 set d aa7 1 set d aa8 1 set d aa9 1 set d aa10 1
  • Fortran 读取混合文本和数字

    我正在使用 Fortran 90 读取包含以下格式数据的文件 number 125 var1 2 var2 1 var3 4 number 234 var1 3 var2 5 var3 1 我尝试了以下命令并且工作正常 read 2 tem
  • Ionic Jasmine:env.stopOnSpecFailure 编译成功后不是函数

    将 Ionic 与 jasmine karma 一起使用 在运行测试时 编译成功 但在 jasmine 仪表板中出现空屏幕 控制台中出现错误 以下教程 https leifwells github io 2017 08 27 testing
  • 受范数不等式约束的二次函数最小化

    我正在尝试解决以下不等式约束 给定 N 只股票的时间序列数据 我试图构建一个投资组合权重向量以最小化回报的方差 目标函数 min w T sum w s t e n T w 1 left w right leq C where w是权重向量
  • 从外部访问 Google 地图

    我有一些 javascript 代码 可以绘制 v3 GoogleMap 我想从外部访问地图对象 另一个js文件 是否有可能不创建额外的全局变量来引用地图 单独的 JS 文件在同一范围内加载和执行 因此无论您使用一个还是多个 JS 文件 都
  • 将参数从 tasklet 步骤添加到作业上下文,并在 Spring Batch 的后续步骤中使用

    目前 我使用 jobParameters 来获取 FlatFileItemReader 和 FlatFileItemWriter 的文件名 测试我的批次是可以的 但我的目标是读取某个目录中的文件 该目录中只有这个文件 并且文件名可能会改变
  • 错误:invalid_request 缺少必需参数:范围(Restify 和 Passportjs w/ Google OAuth2)

    因此 我在使用 Restify 和 Passportjs Google OAuth2 策略 时遇到了 Node js 应用程序的问题 当我使用passport authenticate 它给了我以下错误 400 这是一个错误 错误 无效 请
  • 提高Python代码的速度

    我有一些包含许多类的 python 代码 我用了cProfile发现程序运行总时间为68秒 我发现一个类中有以下函数Buyers这 68 秒中大约需要 60 秒 我必须运行该程序大约 100 次 因此速度的任何提高都会有所帮助 您能建议通过
  • 如何查找 C++ 中的内存泄漏

    在嵌入式环境中检测 C 内存泄漏的好方法是什么 我尝试重载 new 运算符来记录每个数据分配 但我一定做错了什么 这种方法不起作用 还有其他人遇到过类似的情况吗 这是 new 和 delete 运算符重载的代码 EDIT 完全披露 我正在寻
  • 带有大标题的导航栏 iOS 11 的图像

    AppStore app has an icon with an image on the right side of the NabBar with Large Title 如果有人的话我真的很感激知道如何实施 it or ideas关于
  • 从 FlowDocument 创建 XPS 文档并即时附加它

    我有一个 FlowDocument 我想将其转换为 XPS 文档并将其附加到电子邮件中并一起发送 我正在使用这个代码 public static Stream FlowDocumentToXPS FlowDocument flowDocum
  • 使用 Java 应用程序运行 Orbeon-Form-Builder-Generate-Form

    我应该能够使用 Java 应用程序运行 Orbeon Form Builder Generated Form 吗 即 将表单的源代码复制到 simple JSP 中 使用中提到的单独部署 http wiki orbeon com forms
  • 用于在命令提示符下运行 .exe 的 Bat 文件

    我想创建一个 bat 文件 这样我只需单击它即可运行 svcutil exe language cs out generatedProxy cs config app config http localhost 8000 ServiceMo
  • 如何使用不同的包(不仅仅是不同的包版本号)覆盖嵌套的 npm 子依赖项?

    Overview 我在解决由以下人员识别的 ReDoS 漏洞时遇到问题npm audit 我的应用程序有一个嵌套的子依赖项ansi html很容易受到攻击 但不幸的是 似乎维护人员擅离职守 https github com Tjatse a
  • iOS 上“由于未捕获的异常而终止应用程序”

    我有一个for在我的代码中循环 当继续执行此 for 循环时 我的应用程序崩溃并在控制台上打印以下消息 Terminating app due to uncaught exception NSRangeException reason NS
  • 如何指定显示?

    当我通过 SSH 运行一些程序时 例如firefox 我收到一个错误 Error no display specified 我想打开许多显示器 仍然显示stdout每个程序的 最初的问题 如何指定显示以获得多显示节目 Pablo Santa