markdown 有关如何在Mac OS X上安装Fish shell的说明,包括Oh My Fish!。还包括几个有用的功能。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown 有关如何在Mac OS X上安装Fish shell的说明,包括Oh My Fish!。还包括几个有用的功能。相关的知识,希望对你有一定的参考价值。
# Installation
1. Install [fish](http://fishshell.com/) via [Brew](http://brew.sh/)
2. Optionally install [Oh My Fish!](https://github.com/oh-my-fish/oh-my-fish)
3. Add fish to known shells
4. Set default shell to fish
```bash
brew install fish
curl -L https://get.oh-my.fish | fish
sudo echo /usr/local/bin/fish >> /etc/shells
chsh -s /usr/local/bin/fish
```
# Functions
Add any the following functions to `~/.config/fish/config.fish`
### sudo bang bang
Repeat previous command with administrator rights
```
function sudo
if test "$argv" = !!
eval command sudo $history[1]
else
command sudo $argv
end
end
```
### cd..
Shortcut to browse parent directory
```
function ..
cd ..
end
```
And how often did you ever type `cd..` instead of `cd ..`? Let's extend our previous function:
```
function cd..
cd ..
end
```
### dropbox
Quickly access your DropBox folder
```
function db
set user $HOME
cd "$HOME/Dropbox"
end
```
### docs
Quickly access your documents folder
```
function docs
switch (uname -s)
case Darwin Linux FreeBSD NetBSD DragonFly
set documents $HOME/Documents
case '*'
set cygwin (eval uname -o)
if test $cygwin = "Cygwin"
set documents (eval cygpath -O)
end
return
end
cd $documents
end
end
```
### os
Return platform name
```
function os
switch (uname -s)
case Darwin Linux FreeBSD NetBSD DragonFly
eval command uname -s
case "*"
switch (uname -s)
case Cygwin
eval command uname -s
case "*"
eval echo "undefined"
end
end
end
```
### git tag
Simplify the creation and deletion of Git tags
```
function tag
if test $argv[1] = "-d"
# delete tag if provided
if test $argv[2]
eval command git tag -d $argv[2]
command git push origin :refs/tags/$argv[2]
end
else
# create new tag and push
eval command git tag -a $argv[1] -m $argv[1]
command git push --tags
end
end
```
以上是关于markdown 有关如何在Mac OS X上安装Fish shell的说明,包括Oh My Fish!。还包括几个有用的功能。的主要内容,如果未能解决你的问题,请参考以下文章