小编Tuy*_*ham的帖子

排除特定命令保存到历史记录中

我想排除一些特定命令保存到 zsh 历史记录中。

例如:无论设置HIST_IGNORE_SPACE与否,都排除 mpv/mpc 命令保存到 zsh 历史记录中。

我在这里找到了答案,但当我测试它时它不起作用。

command-history zsh

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

Zsh:删除# - 粘贴到终端时的注释?

我使用clipmenu 选择要粘贴到以zsh 作为shell 运行的终端中的内容。

问题是,例如,当我粘贴一个 shell 函数时,zsh 会回显错误,该函数包含一些 # 用于该函数内的注释。我必须手动返回并清除所有包含 # 的行。

系统:archlinux/zsh/clipmenu

编辑:功能示例:

test() {
    # must remove this line manually after paste into zsh's shell
    <do something>
}
Run Code Online (Sandbox Code Playgroud)

command-line zsh terminal

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

Shell:测试 -n/-z 上只有双引号?

例如,如果test -e是:

VAR="<this is a file path: /path/to/file/or/dir"
test -e $VAR && do_something || do_anotherthing
Run Code Online (Sandbox Code Playgroud)

问题:我应该"$VAR"在这里使用吗?如果没有必要,这里我不喜欢冗长,因为$VAR显然在这种情况下是一条路径,那么如果它是空字符串,它应该总是失败,因为没有路径是空字符串,然后按照我的逻辑,双引号是没有必要的。

但它是字符串测试的情况,测试 -n 例如:

VAR="<this is a string"
test -n $VAR && do_something || do_anotherthing
Run Code Online (Sandbox Code Playgroud)

然后按照我的逻辑,$VAR应该放在双引号中:"$VAR"因为它可以扩展为空字符串,如果不在双引号中,则将仅扩展为-n参数并且始终为真。

因此,真正的问题是因为我怀疑我们是否应该在测试命令中仅在字符串-n-z字符串中使用双引号?

command-line shell shell-script shell-builtin

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

如何恢复“stty cols N”的效果?

我已经stty cols 72在我的xterm终端中设置了。

怎么恢复正常呢?因为当我更改该终端的大小时,cols始终设置为72并且无法拉伸到当前调整大小的终端窗口。

我运行stty cols 72 && w3m https://google.com,所以我需要重置stty cols回终端窗口的最后状态。

我确实也stty设置了~/.zshrc一些选项。

terminal stty

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