小编Gee*_*eeb的帖子

为什么 Ctrl-D (EOF) 退出 shell?

您是否真的通过输入此转义序列来“结束文件”,即交互式 shell 会话是否被 shell 视为真正的文件流,就像任何其他文件流一样?如果是,是哪个文件?

或者,Ctrl+D信号只是一个占位符,表示“用户已完成输入,您可以终止”?

shell escape-characters

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

是否有等效于“screen -D -R”的 tmux

我想知道是否有一种方式来获得tmux表现得像screen -D -R那么我可以说,有命令,如腻子默认命令。

这些screen开关将强制为我的用户分离现有的屏幕会话(即使它仍然处于活动状态并在其他地方登录)并将其重新附加到当前会话。此外,在不存在屏幕会话的情况下,它将创建一个新会话。

我喜欢 tmux 并且可以在屏幕上看到明显的好处,但是此功能的存在确实可以解决问题。

tmux attach 如果没有,似乎不会创建新会话。

tmux 的手册页说:

如果没有启动服务器,attach-session(attach) 会尝试启动它; 除非在配置文件中创建会话,否则这将失败。

粗体部分是什么意思?(我在 conf 文件中找不到创建会话的示例)。

gnu-screen tmux

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

我将如何检测非登录 shell?(在 Zsh 中)

我想创建一个在 Zsh 实例启动时运行的脚本,但前提是该实例是:

  • 非登录。
  • 交互的

我觉得我说得对.zshrc运行的所有交互shell实例,.zprofile.zlogin为所有登录shell运行,并且.zshenv运行于所有情况。

我想这样做的原因是检查是否有现有的 ssh-agent 正在运行,如果有,请在新打开的 shell 中使用它。

我想任何执行的测试都最好放在.zshrc(因为这保证了交互式 shell)和从那里调用的指定“非登录事件”脚本中。

在测试 ssh-agent 之前,我可能首先想检查新 shell 是否已经作为现有远程 SSH 会话的一部分运行,但我为此找到了这个 SE 配方

我选择 Zsh 是因为它是我喜欢的 shell,但我想任何正确的技术都适用于其他 shell。

zsh configuration shell-script interactive ssh-agent

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

不同类型的 XWindows 字体的用途是什么?

在我的目录中/usr/share/fonts/,我有四个子目录,对字体类型进行分类:

  1. cmap
  2. truetype
  3. type1
  4. X11

该命令fc-list会生成它们的列表。

这些不同的类别是出于特定目的,还是仅仅是字体设计不同趋势演变的结果?

xorg fonts x11

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