问题标签 [tty]

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.

0 投票
3 回答
18392 浏览

linux - 在 Linux 终端应用程序中接收按键和按键释放事件?

我想编写一个简单的 C 程序,它将根据“key down”和“key up”事件执行不同的操作。该程序将从rxvt内部运行。

我应该使用什么库或机制来访问按键和释放?/dev/tty阅读只会提供关键版本是真的吗?这对于 termcap、terminfo、ncurses 和 slang 也是如此吗?有没有办法从终端应用程序中实现这一点?

0 投票
2 回答
1340 浏览

c - Linux 接收 ttycontrol 程序的信号中断

如果我的控制 /dev/ttyS2 的进程在串行端口上接收到 BREAK,我想接收 SIGINT。我从 shell 运行这个程序。从我发现的只有“终端是前台进程组的控制终端,它会导致一个 SIGINT 被发送到这个前台进程组”我尝试制作终端的进程控制器,但它失败了。

0 投票
3 回答
2097 浏览

bash - 通过标准输入的箭头键

我正在尝试通过标准输入向 bash 发送箭头键:

猫 | /bin/bash

然后我输入“echo hi”=>“hi”出现在控制台上(当然没有引号)然后我按向上箭头键 => ^[[A command not found 出现

是否可以通过 stdin 向程序发送箭头键?

我问的原因是:我想从另一个程序控制 bash。我想向 bash 发送箭头键

0 投票
2 回答
875 浏览

bash - bash 脚本无法作为后台进程正确运行

我有运行良好的 bash 脚本,但是当我将它发送回来nohup script & 并关闭我的终端会话时,它就无法正常工作。它只在我打开的终端会话中运行良好。

如果没有终端会话,可能会影响我的脚本运行不正确的可能原因是什么?它可能是终端变量之一还是什么?

太阳能 10

0 投票
3 回答
365 浏览

scripting - 我在哪里可以找到 Unix 的 TTY 和 curses 文档?

我正在为在 SCO Unix 上运行的 ERP 程序开发自动化工具。
请参阅我关于 Expect 的问题:

我在哪里可以找到(本地或网络)资源来了解会话中使用了哪些控制字符,更具体地说,在与 ERP 程序交互期间确定屏幕上的字段位置?

0 投票
7 回答
8640 浏览

tabs - 如何在 gnome-terminal 中将选项卡显示为 4 个空格

实际上 gnome-terminal 将选项卡显示为 8 个空格,这在您 cat 文件或查看差异时非常烦人,有什么方法可以永久更改它吗?

0 投票
1 回答
236 浏览

php - 在 php 的信号处理程序中获取调用者的 tty

我刚刚为我的应用程序编写了 php 守护程序,并希望实现一些在指定信号(SIGUSR1)上生成的输出信息。我在代码中有信号处理程序

并准备好函数处理程序

除了一件事,一切都有效。当我将信号发送到我的守护进程(posix_kill($pid, SIGUSR1)甚至是简单kill -10 pid的 bash)时,我在控制台中得到了启动守护进程的输出。

是否可以获得调用者的文件描述符而不是守护程序的文件描述符?我不想将此数据发送到指定的输出(例如在 kill -10 PID 之后),而不是发送到守护程序的 FD。

我希望我写得很清楚:)

0 投票
2 回答
1054 浏览

python - 检测 tty 输出结束

嗨,我正在编写一个伪终端,它可以存在于一个 tty 中并产生第二个 tty,它是过滤输入和输出的

我现在用python写,产生第二个tty,读写很容易

但是当我阅读时,阅读并没有结束,它会等待更多的输入。

----------------------------- 输出 -------------------- ----

看起来它已经到达 hte 缓冲区的末尾,而不是返回 None 或 '' 它挂起等待更多输入。

我应该寻找什么来查看输出是否已完成?缓冲区结束?一个不可打印的字符?

- - - - - - - - 编辑 - - - - - - -

当我运行 xpcshell 而不是 ls 时也会发生这种情况,我假设这些交互式程序有某种方式知道再次显示提示,奇怪的是提示,在这种情况下“js>”永远不会出现

0 投票
1 回答
555 浏览

macos - 建立 FTDI USB 串行连接时键盘和蓝牙被杀死

好的,当我使用 LabVIEW 或 Python 与我的 Arduino Duemilanove (ATMega328) 建立连接时,我的蓝牙或键盘都被杀死了。

我只是想建立一个连接/dev/cu.usbserial-A9007UZh(或tty.usbserial-A9007UZh,但即使在使用python时关闭终端后,这似乎也会杀死键盘或蓝牙)。

我在 MacbookPro 上,我发现键盘与两个 USB 插槽之一位于同一个 USB 集线器上,而蓝牙与两个 USB 插槽中的另一个位于同一个 USB 集线器上,这解释了这两个设备之间的关联——但是是什么导致了其他设备的丢失?

当我使用 Arduino(编程 IDE)或 Cornflake 打开串行连接时,没有错误——一切都按预期工作。这似乎只发生在 LabVIEW 和 Python 上。

我在 Snow Leopard 10.6.2 上,拥有最新的 FTDI USB 驱动程序,并且在 32 位模式下运行。

0 投票
3 回答
3112 浏览

c - 我将如何编写 Linux TTY 嗅探器?

出于教育目的(不是任何人都应该关心这种练习背后的动机),我想编写一个可以从备用 ttys/ptys 读取/写入/写入的程序。我读过论文(从 1990 年代开始),但无法使用他们在现代 Linux/glibc 上使用的实现

我希望有人过去曾对此进行过研究(过去不是太远),或者至少,阅读了与此相关的文档,他们可以提供,这将进一步启发我。

我还想知道(考虑到 Linux 没有流的事实)是否必须通过可加载内核模块 [lkm] 来完成此练习。

我有很多问题,并且可能对允许实现这些目标的一些基本意识形态存在误解,有人可以帮忙吗?:)