问题标签 [gnome-terminal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 如何识别 gnome-terminal 配置文件?
不久前,我在askubuntu上发布了一个问题。由于没有任何动作,而且我还挖了一些,我会在这里尝试。可能是一个更正确的地方,(我不知道是否可以再提出问题(我没有得到任何这些选项))。
无论如何:
有没有办法获取 gnome-terminal 配置文件 ID?在 bash 脚本中需要它——例如——</p>
在我试图回答这个问题的过程中,我取得了一些进展——但没有令人满意的解决方案。老实说,它真的让我害怕应用程序是如何屏蔽从命令行作为终端仿真器进行修改的!对我来说这是不可理解的。
除了接触 gnome-terminal 的来源,(我不想要自定义版本),还有什么合法的方法可以得到这个吗?事实上,它是 vte 的包装器,它使用各种共享库,以某种我没有想到的方式,等等。
将一些 C 代码添加到混合中就可以了。
至今:
我已经检查了“保存配置”选项,但因为它 1. 不令人满意,也就是 100%,并且 2. 更重要的是,这也将被删除,它完全失败了。有关更多详细信息,请参见下面我自己的答案。
这没有环境变量。
dbus:似乎没有任何消息传输或任何功能可用于此类信息。已测试当前(3.6.0)版本和最新开发。
注入:虽然它是可能的,并且已经尝试向它注入自定义代码,但这是一个容易出错的尝试,它不是一个解决方案。
c++ - 无法在我的 C++ 代码中调用 gnome-terminal 命令
第一行错误:错误:expected ';' before 'Node'
我知道这是因为“”--name
反正有没有让这个命令工作?
c++ - 我怎样才能完全杀死一个 gnome 终端?
我注意到当我执行以下操作时,gnome-terminal 只是进入“僵尸状态”
有没有办法完全杀死程序?我需要它来释放它的 PID。
shell - gnome 终端选项卡打开多个 ssh 连接
我有一个包含服务器列表的文件:
服务器.TXT:
从 gnome 终端脚本,我想打开一个新终端,每个服务器都有一个选项卡。
这是我尝试过的:
这是错误:
无法解析参数:“--command/-e”的参数不是有效命令:文本在找到匹配的引号之前结束。(文本是“ssh”)
尝试删除 -e 后的空格
我得到一个类似的错误:
无法解析参数:“--command/-e”的参数不是有效命令:文本在找到匹配的引号之前结束。(文本是'usr@192.168.0.100'')
显然存在解析错误,因为 shell 试图通过使用空格来预测和放置分隔符来提供帮助。服务器文件在没有通知的情况下被更改,并且需要查看许多不同的服务器集。
ruby - .rvmrc 未在 gnome-terminal 中读取
在一个目录中,我有这些文件:
但是.rvmrc
当我们切换到这个目录时文件不会被读取。
我已经配置了 gnome-terminal,因为这个页面说:https ://rvm.io/integration/gnome-terminal/
它似乎被禁用,因为可以使用rvm_project_rvmrc=0
in/etc/rvmrc
或~/.rmvrc
.
更改目录时如何启用 .rvmrc 加载?
java - 将日志输出重定向到另一个终端
我有以下脚本文件,它执行 Java 主类并在终端上打印一些日志数据。我想将打印此程序的任何内容重定向到另一个终端(例如 /dev/pts/1,但这对我不起作用)。怎么做 ?
linux - 如何在 gnome-terminal 中使用 Vim 启用括号粘贴模式?
阅读此答案后,我真的很想在我的 Ubuntu 桌面上尝试括号粘贴模式。任何人都知道这是否可能,如果可以,如何使其工作?
c - 如何在linux中通过C程序打开新终端
我编写了有很多连接的客户端-服务器代码,假设每个节点代表同一台机器上的不同进程。为此,我显然使用了 fork()。
但现在的问题是所有结果都显示在同一个终端上。我想知道是否有任何方法可以在每个fork()
或进程创建后打开新终端并在特定终端上显示该进程的所有结果。
PS:我已经尝试过system("gnome-terminal")
,但它只是打开了新终端,但所有结果只在同一个终端上再次显示。所有新终端都只是打开并保持空白,没有任何结果。
我也浏览了这个链接How to invoke another terminal for output programmatically in C in Linux但我不想用参数或其他东西运行我的程序。它应该就像./test
这是我的代码:-
所以基本上我想要的是每个进程应该有新的终端只显示那个进程信息或结果。
我到底想要什么:
- 在 fork() 之后,我有一些与进程 1 相关的数据,然后我希望将其输出到一个终端
- 每个过程也是如此。因此,如果我有 3 个进程,则必须有 3 个终端,并且每个终端必须只显示与进程相关的数据。
我知道使用 IPC(进程间通信)是可行的,但还有其他方法吗?我的意思是只有2-3个命令左右?因为我不想在这部分编码上投入太多。
提前致谢!!!
readline - 使用鼠标在终端中移动光标
假设我写了这样一行:
查找 somedir -flag1 opt1 -flag2 opt2 -flag3 opt3 -flag4 opt4 -flag5 opt5 -flag6 opt6 -flag7 opt7 -flag8 opt8 -flag9 opt9 | xargs 命令...
然后我需要对 opt6 进行一些更改,使用键盘,我需要按回到开始,然后按 15 次才能到达那里(一个接一个?对我有好处,希望我学会数数)。
或者,如果我对 Emacs 有一点了解,我会按 ,输入 14,然后将我带到 opt6 之后的空间。
或者,我可以set -o vi
按下以启动命令模式,然后在f
ort
或它们的大写表亲前面加上不准确的计数以到达那里。但我怀疑即使是 vimer 也会这样做,我们使用EasyMotion。
有时我只是不想数数,盯着愚蠢的终端我的眼睛很痛。左键单击会很棒,但是鼠标只能在终端中选择文本。但是,当在终端中运行 vim 时,我们可以使用鼠标来移动 ( set mouse=a
)。如果鼠标可用于vim,为什么不能在终端中使用?
ps:我的系统是Ubuntu 12.04。
c++ - 从终端访问数据
我必须编写一个程序来拦截来自终端的数据,并且我必须解析它。在处理完数据后,我必须在它进入标准输出之前对其进行解析。
我不能使用tee
或像prog > file 2>&1
程序将是交互式的命令。
例如:如果用户ls
在终端中输入我必须解析它,那么它应该进入操作系统,然后当我得到处理后的结果时,我必须在它显示在终端之前再次解析它。
我做了我的研究,我认为我可以通过伪终端接口( pty )来实现它。
请让我知道是否有更好的方法来实现它。我正在使用cpp
andbash
平台是*nix
.
更新:我也可以使用libexpect
from expect
。