Dav*_*eto 136 linux ubuntu zsh
我正在使用zsh,我正在尝试向变量添加一个新的条目(/home/david/pear/bin),PATH但我不知道如何.
最让我困惑的是,PATH我的~/.zshrc文件中没有对变量的引用,但是echo $PATH返回:
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Run Code Online (Sandbox Code Playgroud)
所以PATH变量正在某处设置.
Lin*_*ios 156
这里:
export PATH=/home/david/pear/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
ony*_*ony 131
实际上,使用ZSH允许您使用环境变量的特殊映射.所以你可以简单地做:
# append
path+=('/home/david/pear/bin')
# or prepend
path=('/home/david/pear/bin' $path)
# export to sub-processes (make it inherited by child processes)
export PATH
Run Code Online (Sandbox Code Playgroud)
对我来说,这是一个非常简洁的功能,可以传播到其他变量.例:
typeset -T LD_LIBRARY_PATH ld_library_path :
Run Code Online (Sandbox Code Playgroud)
Mic*_*ott 26
您可以以PATH最小的方式附加到您的身上.除非您附加多个元素,否则不需要括号.它通常也不需要引号.所以简单,简短的追加方式是:
path+=/some/new/bin/dir
Run Code Online (Sandbox Code Playgroud)
然后,测试新脚本/可执行文件的常见模式变为:
path+=$PWD/.
# or
path+=$PWD/bin
Run Code Online (Sandbox Code Playgroud)
这种小写语法path用作数组,但也影响它的大写伙伴等价物PATH(它被"绑定"通过typeset).
(注意,没有:需要/希望作为隔板.)
以path这种方式处理(作为数组)也意味着:无需执行a
rehash来获取新的pathed命令.
另外,请看一下vared path动态的编辑方式path
和其他内容.
您可能只path对此问题感兴趣,但由于我们讨论的是导出和数组,请注意
通常无法导出数组.
您甚至可以防止PATH重复输入
(请参阅
此内容
和此内容):
typeset -U path
Run Code Online (Sandbox Code Playgroud)
Siv*_*een 21
一个班轮,没有打开~/.zshrc文件
echo -n 'export PATH=~/bin:$PATH' >> ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
要么
echo -n 'export PATH=$HOME/bin:$PATH' >> ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
要查看效果,请source ~/.zshrc在同一选项卡中执行或打开新选项卡
选项1:将此行添加到〜/ .zshrc:
export "PATH=$HOME/pear/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)
之后,您需要运行source ~/.zshrc以使更改生效,或者关闭此窗口并打开一个新窗口
选项2:在终端控制台内执行它,仅将此路径添加到当前终端窗口会话.关闭窗口/会话时,它将丢失.
如果你使用的是 macOS(我使用的是 Monterey 12.3.1),你可能会像我比喻的那样揪着你的头发。这些说明首先在终端会话中对我有用,但无论我对导出做了什么,我都无法让它持续存在。此外,我在任何地方都找不到 .zshrc 。
事实证明苹果采取了不同的做法。您需要编辑的文件是etc/paths. 您可以简单地sudo nano /etc/paths将您的路径添加到新行中。然后只需重新启动终端即可。
小智 5
添加了〜/ .zshrc的路径
sudo vi ~/.zshrc
添加新路径
export PATH="$PATH:[NEW_DIRECTORY]/bin"
Run Code Online (Sandbox Code Playgroud)更新〜/ .zshrc
保存〜/ .zshrc
source ~/.zshrc
检查路径
echo $PATH
| 归档时间: |
|
| 查看次数: |
152293 次 |
| 最近记录: |