tty相关内容

对分配伪 TTY 的 Docker -t 选项感到困惑

这个选项到底有什么作用?我已经在 TTY 上阅读了很多,但我仍然感到困惑.我在没有 -t 和只有 -i 的情况下玩了起来,似乎希望用户输入的程序在没有 -t 的情况下抛出错误.为什么启用伪 TTY 很重要? 解决方案 -t 选项适用于 Unix/Linux 如何处理终端访问.过去,终端是硬线连接,后来是基于调制解调器的连接.这些有物理设备驱动程序(它们是真正的设备).一旦通用网络投入使用, ..
发布时间:2021-12-07 11:17:37 其他开发

为什么打印到标准输出这么慢?可以加速吗?

我一直对使用打印语句简单地输出到终端需要多长时间感到惊讶/沮丧.在最近的一些痛苦缓慢的日志记录之后,我决定研究它,并惊讶地发现几乎所有的时间都花在等待终端处理结果上. 能否以某种方式加快写入标准输出的速度? 我写了一个脚本('print_timer.py' 在这个问题的底部)来比较将 100k 行写入标准输出、文件和标准输出重定向到 /dev 时的时间/null.这是计时结果: $ ..
发布时间:2021-12-03 13:22:35 服务器开发

如何修复“sudo: no tty present and no askpass program specified"错误?

我正在尝试使用 makefile 编译一些源代码.在 makefile 中有一堆命令需要作为 sudo 运行. 当我从终端编译源代码时一切正常,并且在第一次运行 sudo 命令等待密码时 make 暂停.输入密码后,制作简历并完成. 但我希望能够在 NetBeans 中编译源代码.所以,我启动了一个项目并向 netbeans 展示了在哪里可以找到源代码,但是当我编译该项目时,它给出了错 ..
发布时间:2021-12-03 12:44:30 服务器开发

AT^SYSINFO 和 C++ 终端程序

我编写了一个与 USB 3g 调制解调器串行通信的程序.当我打开端口写AT命令时 AT 对于调制解调器,我得到正常的“OK"响应并且可以使用串行读取功能读取它.在终端中,当我编写命令时 AT^SYSINFO 我收到以下回复: ^SYSINFO:#,#,#,#,#,# # 是数字.但是,当我尝试使用我的程序连续编写相同的命令时,我只读取了这个响应: AT^SYSINFO 然后我尝试读 ..
发布时间:2021-11-30 13:49:02 C/C++开发

如何使用 .NET Core 在 Linux 上以非规范模式打开 tty 设备

我目前在嵌入式 Linux 平台上使用 .NET Core 并取得了成功.不过,我在尝试以原始(非规范模式)打开 tty 设备时遇到了问题.如果我使用的是常规 C 或 C++,我会在打开设备后调用 cfmakeraw(),但如何从 .NET Core 应用程序执行此操作? 我需要使用的设备是用于 USB 客户端连接器的 CDC ACM 功能驱动程序,即它是一个虚拟 COM 端口.它在我的系统 ..
发布时间:2021-11-24 20:09:03 C#

如何为每个 Arduino 获取唯一 ID

我使用两个 Arduino Nano,并想更改 /dev 中列出的名称,因为目前它们总是 ttyUSB. 如何获得唯一的序列号来创建 udev 规则? 我尝试通过 udevadm 获取它,但它为两个 Arduino 返回相同的序列号. /var/log: udevadm info -a -n/dev/ttyUSB0 |grep '{serial}'ATTRS{serial}=="00 ..
发布时间:2021-11-17 03:55:35 其他开发

如何在两个 TTY 之间创建循环?

每个Hello 都有一个响应.第二个 TTY 将向发件人 TTY 发送问候,反之亦然: echo 'echo hello >/dev/pts/1' >/dev/pts/0 第一个接收者应该向原始发送者发送“hello",但它没有.怎么了? [澄清] 我有两个 shell 正在运行./dev/pts/1 是初始发送者. 解决方案 当您将 echo 命令发送到 /dev/pts/0 ..
发布时间:2021-09-14 19:58:13 服务器开发

使用 udev 更改 ttyUSB 权限

我的程序需要在没有root权限的情况下访问ttyUSB. 如您所知,我尝试使用 chmod 777/dev/ttyUSB0 更改它,当我重新启动时,此权限更改为默认值.我如何为此配置我的 udev rules.d? 解决方案 在 rules.d 目录中查找 ttyUSB* 并将其更新为如下所示: KERNEL=="ttyUSB*", MODE="0777" 保留您在该行中找到的任 ..
发布时间:2021-09-12 18:58:21 其他开发

在运行时确定终端/TTY 背景颜色

使用 chalk 库对终端进行样式化/着色. 从'粉笔'导入粉笔; 如果我使用: console.log(chalk.blue('foobar')); 在浅色背景的终端中完全可读,但在深色背景的终端中完全不可读. 有没有办法在运行时确定终端的背景颜色? 给出的例子: "npm notice" 日志级别就是这个问题的一个例子: 黑底蓝字很难看. 解决方案 以下 ..
发布时间:2021-09-05 20:32:42 其他开发

无法更改 pty/N 上的终端大小(适用于 ttyN)

我使用 next 更改终端大小: rc = ioctl(fd, TIOCSWINSZ, &ws); 当我在 linux 文本终端(通过 Alt-Ctrl-F1 切换)下运行它时,结果是我希望看到的.ioctl syscall 给出的范围内的整个我的输入和输出. 但是当我通过 SSH 连接到 localhost 并运行相同的程序时,它只能部分工作.我的意思是我不能输入比 ioctl 设置的终端 ..
发布时间:2021-09-05 20:29:52 其他开发

在 Python 子进程模块中过滤掉需要终端的命令

我正在开发一个机器人,它接受来自网络 (XMPP) 的命令并使用 Python 中的子进程模块来执行它们并将命令的输出发回.本质上,它是一个类似于 SSH 的基于 XMPP 的非交互式 shell. 机器人只执行来自经过身份验证的可信来源的命令,因此允许任意 shell 命令(shell=True). 然而,当我不小心发送了一些需要 tty 的命令时,机器人卡住了. 例如: s ..
发布时间:2021-08-31 20:38:15 Python

我不能 sys.stdout.seek

据我所知,sys.stdout 是一个代表终端标准输出的文件.但是,当我尝试使用 sys.stdout.seek 时,无论我给它什么参数,它都会引发错误: IOError: [Errno 29] 非法寻道 这是怎么回事?我使用的是 TTY 本身而不是像 xterm 这样的虚拟终端,这是事实吗?我该如何解决? 解决方案 当 stdout 是一个 TTY 时,它是一个字符设备并且它是不可搜 ..
发布时间:2021-08-30 19:09:39 Python

什么是 TTY,如何在 Ubuntu 上启用它?

我目前正在设置一个 node.js 服务器,我在这里使用调试模块 https://github.com/visionmedia/debug. 我正在尝试启用它,以便我可以在输出中获取彩色调试信息,但是我的终端看起来像底部的最后一个终端屏幕,它说: 当 stdout 不是 TTY 时,使用 Date#toUTCString(),使其更适用于记录调试信息,如下所示: 有人可以对此有所了解吗? ..
发布时间:2021-08-30 19:09:26 其他开发

如何创建用于读取输出和写入输入的伪 tty

我正在使用 fork() 和 execvp() 来生成一个进程,该进程必须相信它已连接到交互式终端才能正常运行. 一旦生成,我想捕获进程的所有输出,并且能够将输入发送到进程. 我怀疑 psuedo-ttys 可能会在这里有所帮助.有没有人有关于如何做到这一点的片段? 解决方案 您想调用 forkpty().来自手册页: #include /* 用于 openpty 和 f ..
发布时间:2021-08-30 19:01:58 服务器开发

ssh 如何从 tty 接收密码?

我想知道 openssh 如何在登录时获取密码,因为我陷入了将密码自动输入到 linux 中类似工具的问题,这需要像 ssh 一样从 tty 获取密码. 尝试了解sshpass,发现sshpass fork了一个pid相同的子进程,然后在子进程下输入密码. 不知道我的猜测是否正确,ssh 需要检查正确的 pid,因为我无法使用另一个进程输入 ssh 密码来标准输入到当前的 tty. ..
发布时间:2021-08-27 20:03:27 服务器开发

资源暂时不可用 ttyS3

我有一个串行配置为 ttyS3 的嵌入式系统,我正在尝试使用 `/sbin/getty -L ttyS3 115200 vt100 -H HOME -u root -a` 但是在我尝试之后它无法通过登录启动会话 $ cat/dev/ttyS3cat:无法打开'/dev/ttyS3':资源暂时不可用 但我收到类似“/dev/ttyS3"的错误:资源暂时不可用,那么有没有办法找出哪个进程正在使 ..
发布时间:2021-07-20 18:41:28 服务器开发

如何在换行符到达之前读取 tty 设备上的终端输入?

我正在使用 open()、tcget/setattr()、read() 使用嵌入式 linux (angstrom) 读取串行设备.我可以很好地读写数据.但是,我正在阅读的设备会显示一个不以换行符结尾的提示.这意味着我无法阅读提示,直到我导致设备发送一些其他输出,最后有一个换行符.基本上,我知道提示字符串(“COM3>")位于 tty 缓冲区中,等待设备发送换行符.read() 在换行符到达之前不 ..
发布时间:2021-07-20 18:37:48 服务器开发

在 ssh 会话中启用 tty

我想为编写的脚本获取一些登录信息,供许多用户使用.在 python 中,我将 input_raw 设置为从 dev/tty 读取,但是当我通过 ssh 连接到在服务器上运行的脚本时,它失败了. 想法?解决方法? 我宁愿避免将用户名硬编码到脚本中. 请和谢谢. 解决方案 尝试使用 -t 选项进行 ssh: -t 强制伪 tty 分配.这可用于执行任意远程机器上的基于屏幕的 ..
发布时间:2021-07-17 18:56:24 Python