zsh相关内容
我意识到,当我在我的终端上时,我希望在空输入上按Enter,或者当我在GIT报告上时按ls或git status。 我如何才能做到这一点?我是说,在zsh中的Empty input -> Enter上有一个自定义行为? 编辑:感谢您的帮助。以下是我对preexec... 的看法 precmd() { echo $0; if ["${0}" -eq ""]; then
..
我使用pyenv设置了Python3.6,以便将来可以管理多个版本(例如3.7和3.8)。我没有使用Homebrew安装Python,因为它会更改系统版本。这是我第一次使用zsh外壳,因为它是Catalina OS中的默认外壳。目前,我的现有项目使用的是3.6.8版本。 所以这是我当前的设置: % pyenv versions 结果: system * 3.6.8 (s
..
在Catalina之前的MacOS下,我有一个每天运行外壳脚本的LaunchAgent。在升级并切换到zsh后,它不起作用。我已检查的内容: Shebang切换到zsh 可以从命令行手动执行外壳脚本 sh在系统首选项>安全和隐私中拥有完整的磁盘访问权限 plist在~/Library/LaunchAgents中,并自动启动,所以chown是正常的 我在plist中添加了错误检查:
..
在我的.zshrc文件中,有以下几行来解析我当前的git分支并将其显示在终端中,.zshrc文件如下所示: # Load version control information autoload -Uz vcs_info precmd() { vcs_info } # Set up the prompt (with git branch name) setopt PROMPT_SUBST
..
我正在尝试将我的git branch设置为紫色。这是我所拥有的: parse_git_branch() { git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* (.*)/(1)/' # git symbolic-ref --short HEAD 2> /dev/null } setopt PROMPT_SUBST PS1=
..
我正在尝试使用for循环在批处理中定义zsh函数。我希望得到不同的函数,例如pre1post、pre2post等,每个函数都引用创建函数时变量的值。 根据我的尝试,我正确地获得了函数的名称,但循环中使用的值引用了数组中的最后一个值(就像它是全局变量一样?)。 如何在每个定义的函数中保存变量的当前值? DESCRIPTORS=("1" "2" "3") for i in $DES
..
zsh;终端在系统首选项中具有完全磁盘访问权限。 /usr/bin % ls -alF python lrwxr-xr-x 1 root wheel 75 Jul 12 11:48 python@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 /usr/bin % sudo
..
我正在尝试编写一个Shell命令,返回最近修改的文件。 但是,该目录包含的文件超过了ls可以直接容纳的范围(因此使用find,我认为这是通过管道传输到其他命令的正确解决方案)。 在这样做的过程中,我遇到了在目录中运行find .和传递目录以查找(即find $folder)之间令人困惑的区别。 举个例子: ➜ echo $SHELL /usr/local/bin/zsh ➜
..
是否可以自定义zsh,以便在我键入sudo ls,然后按Alt-h查看命令ls的手册页时。run-help的默认行为是显示sudo命令的手册页,而不是ls。 推荐答案 可以。运行以下行或将它们添加到您的.zshc中。 autoload -U run-help autoload run-help-sudo 发件人zsh wiki: [命令。 还有其他帮助器函数,从5
..
我希望在Apple Silicon Mac上同时安装和运行两个版本的Homebrew:ARM64版本和在Rosetta 2下运行的Intel版本。 Iknow我可以在任何BREW命令前面加上arch --x86_64,以便为该命令模拟英特尔,但这可能会导致您已经为ARM64构建的依赖关系的公式发生冲突。例如: Error: gnupg dependencies not built for
..
我在我的.zshcr文件中创建了一个使用多行的自定义提示 PROMPT="%(1V.(%1v)"$' '".)%F{166}%n%f at %F{229}%m%f in %F{114}%.%f"$' '"$ " 但是,当我使用command+K清除终端时,清除的终端中只显示最后一行。因此,我想知道是否有人知道我需要添加什么才能在已清除的终端中显示完整的提示符 推荐答案 按⌃控
..
这是一个简单的C程序: 这是该程序的结果--请注意结尾处的%。 zsh 推荐答案会在最后一行不以换行符结束时打印%(对于普通用户来说是默认的)。否则,提示符会删除此部分行。添加换行符以正确终止最后一行( ): printf("1 "); http://zsh.sourceforge.net/Doc/Release/Options.html#index-PROMPT_00
..
我有一个浮动框,我在其中将默认的Ubuntu外壳更改为oh-my-zsh。 我有一个共享文件夹,其中包含.zshrc,我在置备过程中将其复制到流浪主文件夹。在某些情况下,.zshrc中一行的末尾添加了^M,因此当我vagrant ssh时会出现以下错误: /home/vagrant/.zshrc:source:4: no such file or directory: /home/vagra
..
是否有可靠的方法自动更新(或设置)等于环境变量的环境变量?例如在运行conda activate 或conda deactivate时? 理想情况下,当我创建新环境时,我也不想做任何额外的事情。例如,如果Iconda create -n && conda activate ,则应自动更新VIRTUAL_ENV环境变量。 我希望将
..
我的.zshrc中有以下设置 autoload -Uz add-zsh-hook vcs_info setopt prompt_subst add-zsh-hook precmd vcs_info zstyle ':vcs_info:git:*' formats '%b' 在我的 自定义zsh主题: vcs_info_wrapper() { vcs_info if [[
..
希望有人能帮忙。昨天买了新的MacBook Pro 2020,默认情况下它有ZSH而不是bash,$Sign也消失了。我看到bin文件夹中有两个文件,分别是bash和zsh。 有没有办法在我的提示符中去掉MBP,更改我的提示符名称,同时还能恢复$符号?请看附图我说的是什么。 更新 我设法更改了提示,方法是在主目录中创建一个新文件.zshc并添加提示属性PROMPT='%(?.%F{g
..
我有一个简单但定制的.zshc,我想用我当前所在的git分支填充提示符(当在git存储库中时)。下面的代码似乎可以工作,但比我的实际位置落后了一个提示符。 .zshc: #Prompt messing # Load colors for prompt autoload -U colors && colors # Load version control info
..
我已使用: 安装了rasa pip3 install rasa 当我尝试使用rasa命令时: rasa init 我收到zsh错误: 找不到命令:RASA错误 我正在使用Mac OS Catalina,使用: Python版本2.7.16 Python3版本3.7.6 PIP版本19.2.3 我的path变量如下: /Library/Framewor
..
我知道如何fzf.vim,但我想从终端打开。 历史或viminfo或许可以实现这一点,但我想知道有没有什么聪明的方法。 推荐答案 将最近的文件列表从vim保存到文件: vim -c "call append(0, v:oldfiles)" -c "write vim-oldfiles.tmp" -c exit 将v:oldfiles(保存在~/.viminfo中的最近文
..
Ctrl + l是iTerm2中清除行的默认快捷方式,我想将其更改为Cmd + l,但找不到此操作: b我正在使用zsh。 推荐答案 这是zsh绑定不是iTerm绑定。Ctrl+是zsh中clear-screen小部件的默认绑定。它也可以在bash(可能还有其他外壳程序)中使用,这只是个惯例。在bash-或者更确切地说,Readline,bash的命令行编辑器中-它是也称为cle
..