问题标签 [stty]

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 投票
1 回答
1686 浏览

ubuntu - 在 ubuntu 上使用 USB 调制解调器发送 AT 命令时不断出现错误

我有一个 USB 调制解调器和一个 GSM 卡插入,希望与它通信。我安装了 minicom 和 atinout,并在 minicom 中使用了这个命令:

在 atinout 上我也做了:

笔记:

  • 使用调制解调器管理器 GUI,USSD 命令和 AT 运行良好
  • 在 atinout 上它几天前可以工作,然后它拒绝工作硬件版本:

    制造商:TCT Mobile International Limited Model: HSPA Data Card Revision: IX1B5400XX

0 投票
1 回答
1047 浏览

linux - M-^是什么?在 stty 输出中是什么意思?

我正在尝试解决一些终端问题,我使用 Git Bash shell 从 Windows 笔记本电脑连接到 linux 服务器。屏幕似乎没有正确刷新(clear 不会清除屏幕,退出 vim 和 man 输出后留在屏幕上等)。我正在查看 stty 设置并将其与另一个没有这些问题的 linux 服务器进行比较。我在工作服务器上看到的一件事是eol = M-^?; eol2 = M-^?;. 有人可以向我解释这个符号吗?如何在另一台服务器上复制此设置?

0 投票
1 回答
781 浏览

shell - Emacs Tramp 在文件提取期间卡在“找到远程 shell 提示符”

我最近设置了一台新的 FreeBSD 机器,但似乎无法通过 Emacs Tramp 连接。它停留在“Tramp:在'broken.example.com'上找到远程shell提示符”。(主机名因匿名而改变)

正如我所看到的那样,我将调试提高到 10 并且它卡在了这个命令上。

它不断循环执行此命令。完整的日志可以在http://depht.com/temp/emacs-tramp-broken.example.com.txt下载

'stty -a' 来自 broken.example.com。

我有一台稍旧的 OpenBSD 机器,同样的 Emacs Tramp 客户端可以很好地工作,working.example.com。与这台机器的连接日志位于http://depht.com/temp/emacs-tramp-working.example.com.txt

'stty -a' 来自 working.example.com

我弄乱了 broken.example.com 上的 stty 设置以模仿 working.example.com 的设置,但没有成功。我不太了解所有的 stty 设置。一种可能的攻击途径是“stty pendin”,stty 的手册页称其与 icanon 相关。但是,我无法在 broken.example.com 上设置 -pendin。通过登录脚本或手动登录后执行的“stty -pendin”不会导致设置“-pendin”。

在这一点上,我完全迷失了,任何帮助将不胜感激。先感谢您!!

0 投票
2 回答
760 浏览

bash - awk/gawk 似乎覆盖了结果列

[琐碎] [已解决]

tl:dr - DOW CRLF 让人感觉好像 awk 行为不端;小错误!

我不确定为什么 awk/gawk 会这样。有什么提示吗?见过 awk 结果覆盖终端上的列吗?我只在一台机器上看到了这个;在其他任何地方,这些东西都很好用!不确定是终端行为不端还是其他原因。一个stty sane似乎也没有帮助。有人见过类似的东西吗?

截屏:awk 或终端 - 行为不端

0 投票
0 回答
2227 浏览

linux - 如何在linux中通过串口发送二进制文件?

我想通过串行连接控制 HDMI 矩阵开关。在 Windows 中,我已经通过以下步骤成功尝试过:

将必要的 HEX 从简单的文本文件解码为二进制文件:

然后为我的comport配置模式:

现在我尝试在 linux (debian) 中做同样的事情。由于文件是二进制文件,我想我可以重用它们,所以我将它们转移到 linux 系统并尝试以下配置 comport:

并发送二进制文件:

但这无济于事。

编辑:

这是一台不同的 PC,但 USB2Serial 转换器是相同的。 lsusb给我:

Bus 001 Device 003: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

dmesg 显示

[ 5.070075] usbserial: USB Serial support registered for generic [ 5.072824] usbserial: USB Serial support registered for ch341-uart [ 5.073476] usb 1-9: ch341-uart converter now attached to ttyUSB0

0 投票
0 回答
667 浏览

android - 从 Android 连接到 RS232 - 没有权限对话框或 shell 命令

客观的

我正在开发一个自定义应用程序,供在有根的 android mini-pc 上内部使用。目标(在其他人之间......所以......许多......其他......)是能够使用电视上嵌入的串行端口打开和关闭电视。我正在使用 FTDI UART RS232 串行 USB 电缆。

地位

该应用程序现在正在运行,使用 android 库(串行驱动程序)我可以与电视通信,但问题是设备每次安装都要求权限(有时,奇怪的是,再次在同一设备上),所以它需要改进。

问题

由于该设备默认没有鼠标或键盘,当发生这种情况时必须有人点击按钮,而且由于该设备通常隐藏在屏幕后面,这真的很烦人。

我的两个位

我觉得这个问题可以通过两种方法解决,但我仍然无法使它们起作用。

  1. 由于设备已植根,我可能能够修改一个未知的(对我而言)允许我绕过权限请求的参数。为此,我尝试为 USB 设备制作一个意图过滤器,并重写控制此行为的接口,但均未成功。有没有办法让这个android版本对权限更宽松?
  2. 由于其他原因,我在应用程序内使用 SuperSU,因此我可以使用强大的外壳电源的全部宽度。使用这个我一直在尝试手动向设备发送命令(/dev/bus/usb/00X/00Y),但这没有奏效。我的理论是,这是因为设备路径的权限,但即使做一个不健康的 chmod 777 我也不能让它们工作。

所以,这就是我现在的问题。我希望这里有人可以帮助我。

附加数据

  • 运行:自定义 Android 4.4.2(无法更改)
  • 需要仅在 apk 中可行(但可以使用 shell 命令)
  • 我们没有制造商签名将其安装为系统应用程序
  • 我们只能使用一个应用程序,所以我不能让另一个应用程序将这个移动到 /sys/apps,而且我不知道应用程序是否可以对自己执行此操作。
  • 使用 Busybox stty -F /dev/.../ 返回“不允许操作”
0 投票
1 回答
93 浏览

shell - ^尽管有 stty 声明,但你不会杀人

问题: ctrl +U不会杀死我的终端程序。


详细信息: 这是我的结果ssty --all

如您所见,它描述了可用的信号中断:
^C= intr
^ \= quit
^U=kill
等...

这是一个无限运行的程序:


ctrl+C 作品


ctrl+\ 作品


ctrl+U 不起作用
为什么我不能以这种方式杀死终端程序?

我当然可以找到进程 id 并运行kill -9 <PID>
但我希望速记工作。


我在 Ubuntu 上:


这是我的终端规格,但我尝试过其他终端(可能不相关)

它也不适用于 xterm。我也尝试过不同的 shell:
sh, bash, ans zsh

问题可能是什么?我现在应该去哪里看?

0 投票
1 回答
4775 浏览

linux - 通过 ttyACM 传输二进制数据

下午好,

我有一个外围设备,它通过虚拟串行端口通过 USB 进行通信。使用通用 ACM 串行驱动程序在 Windows 下一切正常,例如:https ://www.kernel.org/doc/Documentation/usb/linux-cdc-acm.inf

在 Linux 下,它使用 CDC ACM 驱动程序。sys 日志中的所有内容似乎都可以正常工作,但通信行为却很奇怪。当我连接设备时,在通信开始时丢失了大约 10 个字节。接下来,仅接收到第二个命令就可以了。

我的问题是:1)这个设备的通信协议不使用ASCII,它是二进制的(它可以随机包含控制字符等......)。我应该使用 stty 来配置速度、数据位、停止位和奇偶校验,还是需要为二进制通信设置更多东西?(忽略内核中的控制位并传输每个字节 - 原始数据。)

2) 任何想法,如何测试 linux ACM 驱动程序是否正常工作,或者我应该为我的 CDC ACM 设备尝试哪些其他驱动程序?

感谢您的任何想法!

0 投票
0 回答
716 浏览

fortran - 如何在 Bash 中禁用箭头键

我在 Windows 7 64 位操作系统上的 Cygwin mintty 终端中使用 Bash(version 4.3.46(6)) shell,并尝试使用 Fortran 90 制作简单的 CUI 应用程序。我的简化源代码是这样的。

其中第 6 行的 write 语句是可选的(仅用于检查)。

这似乎适用于可打印字符。我观察到来自 stdin 的字符串在终端上回显,并将字符串保存到 variablemybuffer中。

但是当我输入箭头键时,会发生同样的回声,这一次是没有希望的。

在我的终端中,我已经检查(使用此源代码)向上箭头键代码\x1B\x5B\x41\e[A.
然后我认为可能是stty((GNU coreutils)8.25)的问题,所以我尝试了

并在帮助中找到了这个(我认为是最相关的)部分。

因此,我尝试像这样在 fortran90 源代码中指定这些选项。

但它们似乎都不起作用。

有人请解释我如何禁用箭头键的回声。

0 投票
3 回答
231 浏览

terminal - 如何使用 tcl 在原始模式终端中将按键处理委托给 rlwrap

stty raw -echo在我的 tcl 终端程序中使用。我想要的是只为几个按键事件做一些动作,比如Tab. 对于其余的按键事件,我想委托给 rlwrap 或其他默认处理程序,例如将光标移动到左侧并在光标所在的位置插入文本,或者Ctrl+C终止程序。有没有办法做到这一点?