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
    • 最新
    • 标签
主页 / user-3358

iconoclast's questions

Martin Hope
iconoclast
Asked: 2022-03-22 17:11:41 +0800 CST

在 tmux 中,我可以为不同的窗格边框和标题着色不同吗?

  • 1

我有一个 tmux 窗口,其中显示了 3 个窗格:

  1. remote_development(是的,我知道这很奇怪)
  2. 质量保证
  3. 生产

我想像这样格式化窗格标题:

  1. 深绿色背景,白色文字
  2. 黄色背景,黑色文字
  3. 深红色背景,白色文字

我可以更改颜色,但无论我尝试过什么,它都适用于所有窗格边框和标题。在任何当前版本的 tmux 中是否有任何方法可以仅设置特定窗格边框和标题的颜色?

例如,这些行中的每一行都设置窗格边框格式

tmux set pane-border-format '#[fg=brightwhite#, bg=darkgreen] #W [#{pane_index}] → #{pane_title} '
tmux set pane-border-format '#[fg=black#, bg=yellow] #W [#{pane_index}] → #{pane_title} '
tmux set pane-border-format '#[fg=white#,bg=darkred] #W [#{pane_index}] → #{pane_title} '

但每一行都会改变它们。使用-t似乎没有任何区别。

tmux
  • 1 个回答
  • 470 Views
Martin Hope
iconoclast
Asked: 2022-03-18 17:42:16 +0800 CST

什么是 .zshenv 的 Bash 等价物?

  • 0

我读过.bashrc (like .zshrc)仅用于交互式登录(以及远程 shell 的一个非交互式例外)。但是 Bash 的环境变量应该放在哪里(大致)相当于.zshenv?

bash zsh
  • 1 个回答
  • 457 Views
Martin Hope
iconoclast
Asked: 2022-03-17 15:52:55 +0800 CST

在显示第一个提示后,shell 是否可以(自动)源文件?

  • 3

我想知道是否有任何方法可以在我的启动文件中放入一些东西,这会导致在显示第一个提示后获取其他文件。

我更喜欢不依赖钩子的方法,如preexec,precmd或periodic钩子。(我正在使用 zsh,但我知道人们已经编写了代码来将这些代码添加到 bash,通过一些巧妙的 hacktrap或类似的东西。)

我非常简单的第一个测试(我没想到它会起作用,但我觉得有必要尝试一下,只是为了看到精确的结果)将它添加到我的.zshrc,

{ sleep 100 && export VARIABLE_SET=1 } &

然后在shell加载后执行这个,在100秒之前和之后都过去了:

echo $VARIABLE_SET

当然,它(以及我能想到的每一种排列方式)都失败了,并且没有提供关于如何做到这一点的有希望的线索。

我希望启动文件中的某些内容可以触发影响 shell 的采购,即使它在第一个提示符下没有立即可用。我想找到一种方法来延迟“昂贵”的采购,并让提示迅速出现,因为许多使启动文件膨胀的东西都是不经常需要的东西。

我希望找到一种比使用钩子更简单的方法(但我已经使用钩子创建了一个概念验证precmd,以防没有其他方法是可能的)。

bash zsh
  • 4 个回答
  • 106 Views
Martin Hope
iconoclast
Asked: 2022-03-06 15:36:12 +0800 CST

如何让 zsh globbing 忽略 .DS_Store 之类的文件

  • 2

大多数时候,我喜欢(一方面)在 iTerm 的 BSD 变体上运行 zsh 的组合,但(另一方面)让 macOS 体验可用于不运行或不生产的应用程序感觉在终端中运行。

但让我发疯的一件事是.DS_StoremacOS 到处转储的可怕文件。

我可以配置 zsh 以便如果我键入(例如)nvim *tab,*扩展 而不包括我希望避免的任何文件?(这可能包括.DS_Store,Icon?以及我现在想不到的其他可能。)

我不是在问如何在现场构建一个排除某些文件的模式(示例here、here和here),而是如何让所有 glob 始终排除某些文件。

zsh wildcards
  • 1 个回答
  • 117 Views
Martin Hope
iconoclast
Asked: 2022-03-01 18:33:26 +0800 CST

跨服务器比较文件

  • 3

曾几何时,我记得大致是这样的:

vimdiff <(scp://some_server/home/user/.zshrc) <(scp://some_server-qa/home/user/.zshrc)

(其中some_server和some_server-qa在我~/.ssh/config的用户和密钥等中定义,因此没有必要将其包含在外壳中)。

问题是我无法弄清楚这项工作需要什么语法,而且我无法通过谷歌搜索找到任何东西。我敢肯定这里有人知道我错过了什么。我错过了什么?

bash shell
  • 2 个回答
  • 367 Views
Martin Hope
iconoclast
Asked: 2022-02-19 18:49:17 +0800 CST

有没有一种简单、安全、可靠的方法可以在 shell 提示符下注释掉 zsh 中的一行?

  • 4

我经常输入一个命令,然后意识到我需要先做一些其他的事情,我不想记住所有的内容并找出所有的参数,或者稍后再输入一遍,所以我通常#在开头放将其保存在历史记录中以在一分钟左右使用。

通常我已经setopt interactivecomments在我的 .zshrc 中启用了,但有时我必须sudo在某些服务器上使用共享帐户来做某些事情,而这不一定是设置的,所以#在一行之前添加可能会给我带来烦人的响应

zsh: command not found: #

没关系,有人可能会认为,只需使用:,但并不是那么简单。

$ : do_thing "1" && do_thing "2" && do_thing "3"

那将执行do_thing "2" && do_thing "3"。在某些情况下可能没什么大不了的,但这样的事情呢?

$ : cd /some/deeply/nested/directory && rm -rf *

大多数命令并没有那么有害,但请记住,在这种情况下,我意识到在执行我输入的命令之前我必须做其他事情,所以我总是不想执行它或它们.

什么是保存已键入命令的可靠、快速、无害且简单的方法?

echo和 有同样的问题:,而且看起来不那么优雅。

在我看来,将所有内容分组在{and}或(and)中似乎可行,但他们都没有。他们给了我

zsh: parse error near `}'

和

zsh: parse error near `)'
zsh
  • 2 个回答
  • 130 Views
Martin Hope
iconoclast
Asked: 2022-01-01 17:58:58 +0800 CST

zsh 是否有任何等同于 BASH_ENV 的功能?

  • 3

我希望能够使用类似BASH_ENV 变量的东西zsh,但是我无法通过谷歌搜索找到类似的东西。

来自man bash:

BASH_ENV

如果在 bash 执行 shell 脚本时设置了此参数,则其值被解释为包含用于初始化 shell 的命令的文件名,如 ~/.bashrc. 的值BASH_ENV在被解释为文件名之前经过参数扩展、命令替换和算术扩展。 PATH不用于搜索结果文件名。

有没有zsh这样的东西?

bash shell-script
  • 1 个回答
  • 215 Views
Martin Hope
iconoclast
Asked: 2018-12-28 16:26:55 +0800 CST

如何从内存中恢复损坏的 Zsh 历史文件?

  • 6

由于部分原因使我无法理解(并且超出了此问题的范围),我的 Zsh 历史文件已损坏。我打开了几个会话,这些会话在内存中都有历史。有没有办法从内存中恢复历史文件(以正确的格式)?

虽然historyorfc命令的输出看起来像这样(默认情况下,至少)

57694  type -a ssh-keygen
57695  ssh -v localhost

而文件的格式类似于

: 1545938685:133;vim ~/.zshrc
: 1545938820:0;exit

(显然这些不是相同的条目 - 我只是给它们显示格式,因此我面临的问题。)

有什么方法可以fc显示我需要重新创建历史文件的所有数据,就像它被损坏之前一样?

(如果这不可能,我当然可以从备份驱动器中恢复大部分内容,但我宁愿恢复所有内容,知道将来如何执行此操作会很有用。)

zsh command-history
  • 1 个回答
  • 2058 Views
Martin Hope
iconoclast
Asked: 2018-04-16 13:58:06 +0800 CST

为什么 alias foo='echo "This is a quote: \'"' 不起作用?[复制]

  • 23
这个问题在这里已经有了答案:
为另一个命令包装一个包含单引号和双引号的命令 1 个答案
4年前关闭。

为了在我尝试shopt在 Zsh 中使用而不是时提醒自己setopt,我创建了以下别名,首先在 shell 提示符下对其进行测试:

$ alias shopt='echo "You\'re looking for setopt. This is Z shell, man, not Bash."'

尽管外部单引号匹配和内部双引号匹配,并且撇号被转义,但我被提示完成关闭引号:

dquote > _

这是怎么回事?

似乎转义被忽略了,或者由于多个解释级别而需要双重转义......所以,为了验证这个理论,我尝试了双重转义(以及三次转义,等等on) 一直到:

alias shopt='echo "You\\\\\\\\\\\\\\\\\\\\\\'re looking for setopt. This is Z shell, man, not Bash." '

并且从未见过任何不同的行为。这对我来说毫无意义。什么样的怪异巫毒会阻止外壳按我预期的方式运行?

实际的解决方案是不使用引号echo,因为它实际上并不需要任何引号,并使用双引号alias,并转义撇号,以便在编辑文本时将其忽略echo。然后所有的实际问题都消失了。

你能帮助我吗?我需要解决这个令人困惑的问题。

zsh quoting
  • 5 个回答
  • 8053 Views
Martin Hope
iconoclast
Asked: 2018-04-15 14:45:59 +0800 CST

如何访问注释命令的最后一个参数

  • 4

我发现⌥.(alt.对于许多其他人)在终端中工作时非常有用,在当前提示符处插入最后一行的最后一个参数。但是,当最后一行被注释时它不起作用(假设set -o interactivecomments)。

我想不出一个确切的用例,但它已经发生了好几次,我已经注释掉了一个我在执行之前意识到的命令不是我当时需要的,然后想要它的最后一个参数后续命令。

我意识到忽略所有注释掉的东西是有逻辑的,因为它从来没有被解释过,因此没有一个被标记为参数,但是有什么办法可以做我想做的事吗?

如果我必须使用不同的按键,绑定到可以执行我想要的替代命令,这将不是理想的——但会是可用的。

我正在使用 Zsh,但 Bash 解决方案可能有效或接近我在 Zsh 中需要做的事情。

zsh
  • 4 个回答
  • 1226 Views
Martin Hope
iconoclast
Asked: 2018-01-18 13:42:02 +0800 CST

为什么 fzf 在这种情况下会失败

  • 1

我发现fzf它是一个非常有用的实用程序,但由于某种原因,它在这个特定情况下让我失望了。

$ brew outdated | fzf -m --tac | brew upgrade

它没有让我选择要升级的项目,而是暂时显示一个菜单,然后继续升级所有内容。我以前从未有过这样的行为。我在看什么?

brew
  • 1 个回答
  • 30 Views
Martin Hope
iconoclast
Asked: 2018-01-07 19:58:09 +0800 CST

如何从脚本访问 $preexec_functions

  • 0

我正在将一些 Zsh 函数转换为作为脚本运行,在其中一个函数中我需要访问 (例如) 中的值$preexec_functions。一切都在函数中完美运行,但这在脚本中失败了。

是否可以从脚本访问此值?

zsh
  • 1 个回答
  • 321 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