有没有办法让 zsh 在命令行上完成长标志名称?
$ command --reall<tab>
$ command --really-long-flag-name
Run Code Online (Sandbox Code Playgroud)
似乎是一件很麻烦的事情。
我正在尝试使用 Pipenv 并使用 pip 安装它,但是每当我运行任何以 开头的命令时pipenv,都会收到以下错误:
zsh: command not found: pipenv
Run Code Online (Sandbox Code Playgroud)
我知道我应该以某种方式将它添加到我的路径中,但我并不完全熟悉如何配置我的~/.zshrc.
另外,我尝试pipenv使用 查找位置where pipenv,但我得到
pipenv not found
Run Code Online (Sandbox Code Playgroud) 我目前正在使用 ubuntu 20 并使用 zsh + oh my zsh shell 。问题是 zsh shell 的启动时间异常长。从正确的角度来看,与使用 time 命令相比,它几乎比原始 bash 慢 9 倍。
使用原始 bash 进行时间检查
for i in $(seq 1 10); do /usr/bin/time bash -i -c exit; done
exit
0.02user 0.07system 0:00.19elapsed 45%CPU (0avgtext+0avgdata 1816maxresident)k
136inputs+0outputs (3major+1737minor)pagefaults 0swaps
exit
0.05user 0.04system 0:00.17elapsed 52%CPU (0avgtext+0avgdata 1820maxresident)k
0inputs+0outputs (0major+1737minor)pagefaults 0swaps
exit
0.02user 0.06system 0:00.18elapsed 42%CPU (0avgtext+0avgdata 1824maxresident)k
0inputs+0outputs (0major+1745minor)pagefaults 0swaps
exit
0.08user 0.03system 0:00.21elapsed 51%CPU (0avgtext+0avgdata 1828maxresident)k
0inputs+0outputs (0major+1743minor)pagefaults 0swaps
exit
0.00user 0.06system 0:00.14elapsed …Run Code Online (Sandbox Code Playgroud) 我按照以下步骤更改了用户模式下的提示:
$PROMPT=" %m%# >> ")source .zshrc当我切换到 root 模式时,它会显示不同的提示。我必须做什么才能设置相同的提示符,而仅更改特权符号(%#)?
谢谢。
我有一个坏习惯,就是在文件夹/文件名中添加空格。今天它咬我了。
我有一个名为NFB LabNFB Lab 的文件夹。我想将快捷方式/命令 nfb 和 pynfb 添加到文件中~/.zshrc,以便从任何地方启动主 python 脚本。
我~/.zshrc通过 nano 编辑了该文件:
alias nfb=/Users/mathieu/Documents/NFB\ Lab/pynfb/main.py
alias pynfb=/Users/mathieu/Documents/NFB\ Lab/pynfb/main.py
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
alias nfb="/Users/mathieu/Documents/NFB Lab/pynfb/main.py"
alias pynfb="/Users/mathieu/Documents/NFB Lab/pynfb/main.py"
Run Code Online (Sandbox Code Playgroud)
两者都不起作用,我总是得到:
zsh: no such file or directory: /Users/mathieu/Documents/NFB
Run Code Online (Sandbox Code Playgroud)
如何在不卸载/重新安装 NFB Lab 的情况下解决此问题?
目前我的~/.zshrc:
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
Run Code Online (Sandbox Code Playgroud)
AFAIU'm:{a-z}={A-Za-z}'意味着我将获得不区分大小写的制表符完成,例如foo将制表符完成到Foobar(如果存在)。并且'r:|[._-]=* r:|=*' 'l:|=* r:|=*'意味着我将获得单词后面部分的匹配项,例如bar将制表符补全到foobar(如果存在)。但这些部分匹配并非不区分大小写。因此,例如bar,不会使用制表符完成FooBar(再次,如果存在的话)。
有办法让它发挥作用吗?
我想创建一个反应项目,当我执行该命令时,它说“zsh: command not found: npx
然后我尝试了该ls命令,它说” zsh: command not found: ls。
设置export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"命令后,ls和npx create-react-app命令都工作正常,当关闭终端并再次重新打开时,command not found会显示相同的错误。是否有任何无需设置export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"命令的永久修复
我尝试将 python 2.7 升级到 python 3 并修改了文件,~/.bash_aliases但是当我在基本终端中键入 python 时出现此错误
zsh: command not found: python3
Run Code Online (Sandbox Code Playgroud)
当我输入 which python
python: aliased to python3
Run Code Online (Sandbox Code Playgroud)
实际上我更喜欢回到 python 2.7 或者如果有人知道我该如何解决这个问题:c
我安装了sublime text 2并为它创建了一个符号链接并将其放在〜/ bin中.我在〜/ .zshrc中添加了〜/ bin到PATH变量.
如果我尝试执行subl(sublime的符号链接),我得到:
zsh: command not found: subl
Run Code Online (Sandbox Code Playgroud)
但是如果我执行〜/ bin/subl,它可以正常工作.
回应PATH表明〜/ bin在PATH变量中:
~/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
Run Code Online (Sandbox Code Playgroud)
知道什么可能导致命令找不到问题?
我想修改我的zsh默认命令提示符,以便从家里获得当前目录的完整路径.我想要 :
? ~/parentFolder/myFolder git:(master)
Run Code Online (Sandbox Code Playgroud)
代替 :
? myFolder git:(master)
Run Code Online (Sandbox Code Playgroud)