在Bash我有我PS1的
PS1="\u@\h:\w\$(git branch 2>/dev/null | grep -e '\* ' | sed 's/^..\(.*\)/{\1}/') \$ "
git branch如果我在git repo中,这将显示我的当前.
如何设置PS1in fish以便它会显示我当前的git分支?
我现在正在玩鱼壳,我在绕PATH变量设置方面遇到了一些麻烦.对于它的价值,我也在使用哦 - 我的鱼.
如果我回应当前的路径,我得到:
? fish echo $PATH
/usr/local/bin /usr/bin /bin /usr/sbin /sbin /usr/local/bin /opt/X11/bin /usr/texbin /Users/myname/.opam/system/bin
Run Code Online (Sandbox Code Playgroud)
看着~/.config/fish/config.fish我看到以下一行
set PATH /usr/local/bin $PATH /Users/myname/.opam/system/bin
Run Code Online (Sandbox Code Playgroud)
我的问题是(这个措辞可能反映了我对这个问题缺乏了解):在config.fish处理之前,PATH变量集在哪里?即:所有路径/usr/local/bin和/Users/myname/.opam/system/bin来自哪里?
我知道这已经有一段时间了,我发现了很多关于它的讨论,但是我没有得到最终的方法来完成它:管道,stdout和stderr.在bash中,这将是简单的:
cmd 2>&1 | cmd2
Run Code Online (Sandbox Code Playgroud) 我想在fish启动时将./bin目录(相对于当前的shell目录)添加到$ PATH.请注意,这fish是一个shell.
echo $PATH
set PATH ./bin $PATH
echo $PATH
Run Code Online (Sandbox Code Playgroud)
如果我将这些行放在~/.config/fish/config.fishshell中,则会回显相同的路径集合.正确添加绝对路径.
如果我打开shell并set PATH ./bin $PATH在其中键入相同内容bin,则会成功添加包含它的某个目录.但是,当没有bin内部当前目录时,它会显示错误.
set: Could not add component ./bin to PATH.
set: Value too large to be stored in data type
Run Code Online (Sandbox Code Playgroud)
我在OS X Lion上运行鱼1.23.1.
我目前正在试用鱼壳而不是使用bash.我在学习鱼类等效符号方面遇到困难的一种符号$(command)类似于此SOF帖子中的描述.我怎么用鱼写这个?请记住,我可以在我想要评估的命令周围使用反斜杠字符,但链接的帖子和其他帖子不鼓励这样做,因为它是评估命令的旧样式.
具体来说,这是我要转换为fish语法的bash命令(用于在shell启动期间初始化rbenv):
eval "$(rbenv init -)"
Run Code Online (Sandbox Code Playgroud) Fish Interactive shell中是否有一种方法可以显示完整路径.目前,当我导航到目录时,我得到以下shell.
millermj@Dodore ~/o/workspace
Run Code Online (Sandbox Code Playgroud)
但我宁愿看到
millermj@Dodore ~/o-town/workspace
Run Code Online (Sandbox Code Playgroud) my-fish-script a b c d
Run Code Online (Sandbox Code Playgroud)
假设您想从第二个参数开始获取所有参数,那么b c d.
在bash中,您可以使用shift转储第一个参数并访问其余参数"$@".
你会如何使用鱼壳解决问题?
我关注conda_PR_545,conda 问题4221,仍然没有在Ubuntu上工作.
从这里下载conda.fish后,将其转换为anaconda3/bin /.
在〜/ .config/fish/config.fish的末尾添加"source /home/phejimlin/anaconda3/bin/conda.fish".
conda activate spark_env
Traceback (most recent call last):
File "/home/phejimlin/anaconda3/bin/conda", line 6, in
sys.exit(conda.cli.main())
File "/home/phejimlin/anaconda3/lib/python3.6/site-packages/conda/cli/main.py", line 161, in main
raise CommandNotFoundError(argv1, message)
TypeError: init() takes 2 positional arguments but 3 were given
Run Code Online (Sandbox Code Playgroud)
要么
activate spark_env
Error: activate must be sourced. Run 'source activate envname'
instead of 'activate envname'.
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
我最近喜欢用bash钓鱼,我想知道我是否可以改回来.我尝试了这个命令:chsh -s /bin/bash但是关闭终端并重新打开它并不会将其恢复为bash,但它仍然是鱼.
事实上,我该如何去除鱼?
在bash中,我可以执行以下操作
$ echo bunny{1..6}
bunny1 bunny2 bunny3 bunny4 bunny5 bunny6
Run Code Online (Sandbox Code Playgroud)
有没有办法在鱼类中取得同样的效果?