AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[console](unix)

Martin Hope
xpt
Asked: 2023-10-29 10:38:24 +0800 CST

如何使用 dte 编辑器进行替换

  • 5

dte 编辑器是一个小型且易于使用的控制台文本编辑器。

在自述文件或其在线文档中,都说:

  • 正则表达式搜索和替换

(是关键特征)。但是,我还没有找到如何replace在任何地方进行操作。

Evenman dte没有提及任何有关replace操作的内容,或者如何进入命令模式来使用它。

console
  • 1 个回答
  • 35 Views
Martin Hope
j4nd3r53n
Asked: 2023-09-08 22:11:48 +0800 CST

/dev/tty# 上的 minicom - Ctl-A Z 似乎不起作用?

  • 5

我有一台旧笔记本电脑 (Dell Latitude D610),我想将其用作某些需要串行终端的系统,因为这台机器有一个内置 RS-232 端口。我已经安装了Debian 12和minicom,但没有图形环境,所以我在文本控制台上登录。但是,当我启动 minicom 时,Ctl-A Z不会打开帮助菜单 - 相反,我只看到z回显并且光标不移动。事实上,我在屏幕上观察到了同样的情况,所以这不仅限于 minicom。

在我的新笔记本电脑上,我看到了同样的现象,但它在同一系统上的 GUI 终端中工作没有问题,因此它似乎特定于文本模式控制台。我可以更改某个设置来解决此问题吗?

console
  • 1 个回答
  • 19 Views
Martin Hope
nk2
Asked: 2022-10-08 05:53:36 +0800 CST

关于tty的问题

  • 0
  1. 为什么有这么多tty?是否需要多个 tty?
  2. 为什么多个事物分布在不同的 tty 中?例如,我在 tty1 上有 runit 日志,在 tty7 上有 wm,在 tty8 的屏幕角上有一个闪烁的白色光标。为什么不把所有东西都放在一个 tty 中?
  3. 为什么 linux 不按顺序排列这些 - tty1:runit 日志,tty2:wm 等。
  4. 绑定光标是什么意思?
tty console
  • 1 个回答
  • 23 Views
Martin Hope
Pinky_the_bat
Asked: 2022-05-23 20:47:55 +0800 CST

卡在控制台,无法将文件导出到 USB 驱动器

  • 0

我的电脑上有很多重要的文件,我想我搞砸了我的操作系统,因为当我重新启动电脑时,它把我带到了一个没有 GUI 的控制台窗口。我输入“startx”,它吐出“没有这样的文件或目录”错误:我最喜欢的。我需要将文件复制到我格式化为 FAT32 的 USB 驱动器。我输入了命令“lsblk”来列出我电脑上的所有驱动器,然后我看到了我的 USB 驱动器。它只是没有名字。当谈到任何 Linux 时,我都是个白痴。我只知道基础。我在 Windows 中将我的 USB 驱动器命名为“USB”,但是当我在 Linux 上键入“cd /USB”时,它会出现另一个“没有这样的文件或目录”错误。我很确定我做错了。我知道我的文件在我的硬盘上真是令人沮丧。我就是不能 我一辈子都想不出如何在 Linux 上将它复制到我的 USB 驱动器上。我知道如何在 Windows 上做到这一点,但在 Linux 上却不知道。

我正在运行 Peppermint OS(这让事情变得更糟,因为它显然很晦涩,而且几乎没有关于它的教程,而且那里的教程已经过时了)。

这就是我掌握的所有信息。如果我在解释我的问题时做得很糟糕,请对我放轻松。我是 Linux 笨蛋。

console
  • 1 个回答
  • 14 Views
Martin Hope
JennyPenny
Asked: 2022-03-05 01:56:25 +0800 CST

为什么我的 Ubuntu 服务器启动 GUI?

  • 6

我对 Linux 还很陌生,我会成功的;博士。我在我的计算机上安装了 Ubuntu Server 20.04.4 LTS 并将其用作服务器。我只安装了 Java、Filezilla、Forge(Minecraft 服务器)和一个 Discord 机器人。今天我无意中阻止了 SSH 连接的端口 22,所以我将其插入显示器并重新启动以打开 SSH 端口。我受到了一个 GUI 的欢迎,这完全让我感到困惑。没有我的服务器版是如何安装GUI的?我不希望它使用不必要的资源。

输出sudo aptitude why gnome:

i   ubuntu-standard Recommends plymouth
i A plymouth        Suggests   desktop-base
p   desktop-base    Suggests   gnome | kde-standard | xfce4 | wmaker

和sudo aptitude why ubuntu-standard:

Manually installed, current version 1.450.2, priority standard    
No dependencies require to install ubuntu-standard

我 100% 肯定我从未在控制台中输入过 ubuntu-standard。如何在不重新格式化的情况下恢复?

就像@terdon 建议我通过删除 ubuntu-standard

sudo apt remove ubuntu-standard filezilla plymouth desktop-base
sudo apt autoremove

现在“为什么 gnome”的回应是:

i   grub-efi-amd64-signed Depends  grub-efi-amd64 | grub-pc
p   grub-pc               Depends  grub-pc-bin (= 2.04-1ubuntu26.13)
p   grub-pc-bin           Suggests desktop-base (>= 4.0.6)
p   desktop-base          Suggests gnome | kde-standard | xfce4 | wmaker

同样有趣的是,它"echo $XDG_CURRENT_DESKTOP响应 GNOME 并sudo apt remove gnome响应Package 'gnome' is not installed, so not removed.

我很困惑...

ubuntu console
  • 2 个回答
  • 1917 Views
Martin Hope
auditory
Asked: 2022-02-19 05:07:07 +0800 CST

archlinux,连接到linux机器的监视器不同步

  • 1

我有几台安装了 Archlinux 的 linux 机器,每台都连接到 KVM 切换器,但大多数时候所有机器都是远程连接的。我不使用 X,所以没有安装 X 的东西。

几个月前的某个时候,在更新操作系统后,控制台屏幕除了空白屏幕之外什么都没有显示,并且来自 KVM 切换器的“不同步错误”消息。所有机器都有同样的问题。

在此之前,使用控制台没有问题,在那之后,进一步的更新并不能解决问题。

我能做些什么来解决这个问题?我应该查看哪个配置文件?

arch-linux console
  • 1 个回答
  • 28 Views
Martin Hope
Nathan Johnson
Asked: 2022-01-20 19:24:43 +0800 CST

如何识别新板上的串口

  • 1

我正在使用 yocto 移植基于 I.MX233 的定制板,我想知道您最初是如何设置“控制台”内核参数的?

内核是根据设备树中首先提到的还是通过内存地址分配串行设备?

你怎么知道控制台名称会叫什么?例如:ttyACM0、ttyS0,甚至是serial0

linux console
  • 1 个回答
  • 499 Views
Martin Hope
Trey
Asked: 2020-02-04 14:49:23 +0800 CST

zsh脚本提示读取单个击键:适当时添加换行符?

  • 3

我有一个带有-i标志 (→ $interactive) 的脚本,如果设置了,则会为每个目标、à larm -i和其他目标询问一个是/否-默认-否问题。

Zshread -q就是为这种情况而设计的——它接受一个键并将变量设置为y如果键是yor Y,否则将其设置为n。

我的问题是我正在循环提示。因此,它本身会在同一行重复打印我的提示。也就是说,这段代码:

# moshPids is an array of pids
for p in $moshPids; do
  if [[ -n $interactive ]]; then
    read -q "answer?Kill $p? (N/y)"
    [[ "${answer}" == 'n' ]] && continue
  fi
  # do_kill set to print “killing $1” in debug
  do_kill $p
done

结果是:

$ myCmd
Kill 123? (N/y)nKill 456? (N/y)nKill 789? (N/y)yKilling 789
$

对此有很多解决方案——一些在这个网站上的答案中——例如在提示符中包含一个换行符,如下所示:

for p in $moshPids; do
  if [[ -n $interactive ]]; then
    read -q "answer?Kill $p? (N/y)
"
    [[ "${answer}" == 'n' ]] && continue
  fi

  do_kill $p
done

这导致:

$ myCmd
Kill 123? (N/y)
nKill 456? (N/y)
nKill 789? (N/y)
yKilling 789
$

这对我来说似乎很丑陋。另一种解决方案是echo >&2在read命令之后添加,至少一开始看起来很完美:

$ myCmd
Kill 123? (N/y)n
Kill 456? (N/y)y
Killing 456
Kill 789? (N/y)n
$

但是,如果您接受默认设置⏎,则会得到空行(⏎实际输出中未显示,但添加到显示输入中):

$ myCmd
Kill 123? (N/y)⏎

Kill 456? (N/y)y
Killing 456
Kill 789? (N/y)⏎

$

标准

所以:我想要一个单键响应:

  • 不会导致在一行上打印多个提示/答案
  • ⏎按下接受默认值时不会产生空行
  • 仍然保留read -q:的行为answer,y如果键是y或Y; 否则将其设置为n。

解决方案 1

这是我的第一个解决方案:

for p in $moshPids; do
  if [[ -n $interactive ]]; then
    read -k1 "answer?Kill $p? (N/y)"
    [[ $answer != $'\n' ]] && echo >&2
    [[ "${answer}" =~ '[yY]' ]] || continue
  fi

  do_kill $p
done

在这里,-k1而不是-q被传递给,read以便它获得“读取一个字符,任何字符”的行为。这样,我可以测试匹配换行符的字符。如果不是($answer != $'\n'),我可以打印缺少的换行符。

但现在$answer将设置为任何按下的键,而不仅仅是y或n。所以我们必须检查y或Y("${answer}" =~ '[yY]')。

有没有更好的方法来处理这个?

解决方案 2

我也考虑过这一点,使用stty调用暂时禁用键盘回显:

for p in $moshPids; do
  if [[ -n $interactive ]]; then
    stty -echo
    read -q "answer?Kill $p? (N/y)"
    stty echo
    echo >&2
    [[ "${answer}" == 'n' ]] && continue
  fi

  do_kill $p
done

通过禁用键控响应的可见性,这可能会或可能不会更可取,具体取决于您是优先考虑漂亮的输出还是能够在回滚中看到输入。(在这种情况下,yes 选项总是打印一些东西的是/否问题,noecho 似乎很好。如果需要,人们总是可以在echo -n "${answer}"之后添加一个read扩展咒语,将换行符变成空白。)

它比第一个解决方案更长,但可能更容易理解,因为它使用read -q所以不必针对正则表达式进行测试,并且无条件地回显换行符。

但另一方面,它确实与终端猴子;我已经把这两个命令放在足够近的地方,而不应该有太大的时间窗口让命令中断导致终端精神错乱,但这仍然是一个问题。(另外,为了完整起见,我应该添加一个-i未被非交互调用的检查——否则,sttyandread操作将失败。)

有比我提出的两个更好或更惯用的解决方案吗?这似乎是许多“-i用于交互”命令(当然,大多数是用 shell 以外的东西编写的)遵循的明显行为。

zsh console
  • 1 个回答
  • 1273 Views
Martin Hope
MIB
Asked: 2020-01-14 22:39:45 +0800 CST

tmux 在杀死并重新启动后自动重新附加到会话

  • 0

我有一个 tmux 会话,其中我有一个正在运行的 node.js 服务器。因为我想在打印时观看彩色控制台输出,所以我总是将自己附加到会话中。到目前为止,一切都很好。这有点烦人,然后 tmux 会话被杀死并从外部重新启动。这由 gitlab-ci 脚本自动发生,该脚本由 GitLab 项目上的新提交触发。

目前,我总是必须手动重新连接到该会话。有没有办法在不手动执行任何操作的情况下在会话重新启动后立即等待杀死并重新连接?

(如果没有,有没有办法在不附加的情况下查看彩色控制台输出?我目前唯一的解决方案是跟踪日志文件,但遗憾的是没有彩色线条,这有助于实时查看错误。)

console tmux
  • 1 个回答
  • 263 Views
Martin Hope
ghborrmann
Asked: 2020-01-04 08:09:11 +0800 CST

如何在关机期间写入控制台?

  • 4

我试图阻止用户在没有从机器上物理移除闪存卡的情况下关闭或重新启动。为此,我编写了一个 SystemD 服务 removeflash.service:

[Unit]
Description=Prompt user to remove flash card

[Service]
ExecStop=/usr/lib/systemd/flashshutdown.sh
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target
Requires=rsyslog.service

flashshutdown.sh 是一个 bash 脚本,如下:

#! /bin/bash
#
while [ -e /dev/flash ] ; do
    echo "Please remove flash card"
    logger "GHB: Please remove flash card"
    sleep 5
done

我没想到 echo 在关机时会做任何事情,但事实并非如此。但是,我希望 logger 命令能够工作。没有Requires=rsyslog.service,我的服务在rsyslog.service关闭后退出;我插入了防止这种情况发生的要求,但唯一的区别是 removeflash.service 的关闭在关闭顺序中更早。幸运的是,systemd 本身向控制台输出一条消息,表明它正在运行一个作业,提示用户移除闪存卡,从而挽救了服务的目的。

向控制台发出消息的正确方法是什么?

systemd console
  • 2 个回答
  • 923 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve