标签: terminal-emulator

当我打开终端时始终运行 tmux

我通常使用 bash shell 打开lxterminal,通常先输入tmux命令。

我想自动启动 tmux 命令,所以我尝试将此命令添加到~/.bash_profile或添加到~/.profile文件,但它们都没有自动启动 tmux。

这能实现吗?

shell terminal-emulator tmux

2
推荐指数
1
解决办法
5970
查看次数

如果实现终端仿真器,要支持什么类型的终端?

我听说VT100是事实上的标准。这是否意味着我可以只支持 VT100,然后我的终端就可以在现有的命令行应用程序中运行而不会出现大问题?如果没有,如何确保该终端实用?是否有任何参考资料可以帮助实现这一目标?

terminal-emulator terminal

2
推荐指数
1
解决办法
873
查看次数

虚拟终端有主端吗?

当我打开一个终端模拟器(xterm例如)时,xterm会有一个主端(/dev/ptmx)和一个从端(/dev/pts/#)。

但是当我打开一个虚拟终端(按Ctrl+Alt+F#)时,虚拟终端是否也连接到了一个主机?还是直接连接到/dev/tty#没有主站的从站()?

terminal-emulator terminal console pty

2
推荐指数
1
解决办法
384
查看次数

如何设置Linux控制台屏幕的背景色?

注意:我重新编写了问题以澄清问题。这是一个微不足道的问题,可以分为几个部分来回答,因为这个问题有几个属性。

不幸的是,当提出问题的人理解(知道)答案的某些部分以及问题的结构时,问题可能会被重新设计。

因此,问题是从与原始问题不同的角度提出的。

如何使用 shell 实用程序更改 Linux 控制台的颜色设置¹? 如何使用 shell 实用程序更改终​​端仿真器的颜色设置¹?

本来,我想在执行shell脚本的过程中改变Linux控制台的背景颜色。以下命题如我所愿。

#!/bin/sh

# set the background color of the terminal
tput setab 6
clear

printf "%s\n" 'background: cyan'

# do some tasks 
cd /usr/src/initramfs
pwd
ls -l

# the background of the shell output is cyan
Run Code Online (Sandbox Code Playgroud)

尽管如此,有人可能会遇到几个小故障(或困难)。

例如,如果屏幕未被清除,则在 shell 脚本执行期间,背景颜色仅应用于文本输出。如果tput setab 6使用命令行提交命令并且没有清除屏幕,则背景颜色仅应用于输出文本的一小部分。如果在命令行tput setab 6上提交命令并清除屏幕,则背景颜色将应用于全屏,但仅在提交另一个命令之前持续存在。[...]

¹背景色

linux scripting terminal-emulator tput terminfo

2
推荐指数
1
解决办法
2万
查看次数

如何通过串行终端以编程方式发送中断信号(Magic SysRq)

我有 2 台通过模拟 vt220 的串行连接(空调制解调器)连接的计算机。我想从 shell 脚本发送中断信号 (Magic SysRq)。在不编写自定义程序的情况下如何做到这一点?

terminal-emulator signals shell-script serial-port serial-console

1
推荐指数
1
解决办法
1928
查看次数

为什么关闭终端模拟器窗口会终止 bash 进程,而 SIGHUP 陷阱更改为不终止?

在 lxterminal 的终端仿真器窗口中的 bash shell 中,我运行

$ trap "echo hello" SIGHUP 
$ kill -s HUP $$
hello
$
Run Code Online (Sandbox Code Playgroud)

然后我关闭终端模拟器窗口。

关闭终端模拟器窗口是否只会导致 SIGHUP 发送到控制进程,即 bash 进程?

由于 SIGHUP 陷阱不会终止 bash 进程,我希望 bash 进程不会终止,但为什么 bash 进程实际上已终止?

如果我将陷阱更改为""(忽略),也会发生同样的事情。

终端模拟器很重要。在 xterm 窗口中运行的 bash 中,将 trap 设置为""将使 xterm 窗口不可关闭,而将 trap 设置为echo hello仍然可以关闭 xterm 窗口。

谢谢。

linux bash terminal-emulator signals sighup

1
推荐指数
3
解决办法
649
查看次数

杀死shell时如何禁用“Program '/bin/bash' crashed”警告?

我正在使用 Kubuntu 14.04。当我退出终端模拟器(konsole 或 yakuake)时,kill -9 $$它不会关闭,并说:

警告:程序“/bin/bash”崩溃了。

如何禁用此行为并强制终端模拟器在 shell 被杀死时静默关闭?

在同一个系统中,当提示kill -9 $$in 时xterm,它退出没有任何崩溃报告。

我不记得我在哪些 Linux 发行版中看到了这种“无声”的开箱即用行为,但确实有一些。

更新:这样做的原因是退出终端模拟器而不将历史记录保存到.bash_history.

shell terminal-emulator terminal

0
推荐指数
1
解决办法
2774
查看次数

长命令行 ( > $COLUMNS ) 如何自动换行?

有几个点可以通过 I/O,其中一些(据我所知)是 shell、pty、tty、termios、终端模拟器应用程序。在大多数终端模拟器中,长命令行(超过当前 $COLUMNS 的命令行)在用户通过按 Enter 提交命令之前换行到一个新行。此外,当如预期的那样从命令行中删除适当数量的字符时,该行将向后换行到上面的行。

我的问题是:这种魔法通常在哪里处理?它是 termios 设置,还是 shell 的一部分,还是终端模拟器应用程序对此负责?

有关更多上下文,我在 Ubuntu 上使用 Terminator 终端模拟器应用程序 - 换行工作非常好(所以我的 $PS1 提示应该没有问题)。但是我正在开发我自己的终端模拟器应用程序,它与 go pty spawner (github.com/kr/pty) 一起工作,我遇到了长行没有换行的问题,但是同一行。

shell terminal-emulator terminal tty pty

0
推荐指数
1
解决办法
1463
查看次数

为什么我可以使用鼠标滚轮在 xfce4-terminal 中滚动手册页?

man 本身应该对鼠标滚轮一无所知,并且 xfce4-terminal 窗口的滚动条不会改变,所以......

当窗口从 X 服务器捕获鼠标滚轮事件时,xfce4-terminal 是否向 pty master fd 发送了一些东西?

如果是,它会向 pty 设备写入什么以表现得像我按下了Down键?

还是我完全错过了什么?

terminal-emulator xfce4-terminal

0
推荐指数
1
解决办法
312
查看次数

由于 dd if=/dev/sda,PC 扬声器发出哔哔声和杂乱的终端字体?

跑步时

sudo dd if=/dev/sda
Run Code Online (Sandbox Code Playgroud)

内部 PC 扬声器发出声音。也是所有字体,甚至提示和打字输入都有不同的字符,例如“?” 或者 ”•”。

如果您需要了解更多,请发表评论。

我通常做的是 of=/dev/null 或 >>/dev/null 用于读取性能测试和旋转光驱(使用count=1 iflag=direct skip=500000),其中我跳到 LBA 500000 将激光镜头放在中央数据部分。但是我想尝试一下,如果我不将输出重定向到任何地方会发生什么,然后就发生了。

有趣的事实:同样的情况也发生在 Windows 上。

terminal-emulator terminal tty

-1
推荐指数
1
解决办法
120
查看次数