> ## Content Index
> Fetch the complete content index at: https://itsfoss.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# fish Shell Becomes More Awesome With 3.0 Release
- URL: https://itsfoss.com/fish-shell-release/
- Published: 2019-01-07T17:22:41.000Z
- Updated: 2019-01-07T17:22:43.000Z
- Author: John Paul Wohlscheid
- Tags: #Import 2022-12-26 08:27

The developers behind the fish shell announced the release of [version 3.0.0](https://github.com/fish-shell/fish-shell/releases/tag/3.0.0?ref=itsfoss.com). Let’s take a look at the new features in this major release.

## What is the fish Shell, again?

The [fish Shell](https://fishshell.com/?ref=itsfoss.com) is “a smart and user-friendly command-line shell for Linux, macOS, and the rest of the family”. fish is a more modern shell with the goal of being more interactive and more user-friendly than older shells. Unlike its competitors, fish is not based on the Bourne shell or the C shell but attempts to blaze its own path.

![fish shell](https://itsfoss.com/content/images/wordpress/2019/01/fish-shell.jpg?fit=800%2C577&ssl=1)

Testing fish shell on the web

fish shell comes with some nice features, such as:

- Autosuggestions as you type
- Syntax highlighting with extensive error checking.
- Searchable command history.
- 256 terminal colors
- Advanced tab completion.
- Web-based configuration
- A special help command gives access to all the fish documentation in the user’s web browser
- Error messages designed to actually tell the user what went wrong and what can be done about it
- Universal variables
- Support for the X clipboard
- Change fish setting by editing the `~/.config/fish/config.fish` file
- Man page completions
- Fully scriptable with syntax that is simple, clean, and consistent
- Features work out of the box without any configuration

![fish shell on Q4OS](https://itsfoss.com/content/images/wordpress/2019/01/fish-shell2.jpg?fit=800%2C510&ssl=1)

fish shell on Q4OS

## What’s New in fish 3.0?

The [new features included in 3.0.0](https://github.com/fish-shell/fish-shell/releases/tag/3.0.0?ref=itsfoss.com) include:

- Supports for &&, || , and ! for better migration from POSIX-compliant shells
- Variables may be used as commands
- New private mode which will hide commands from the history file. Can be activated using `fish --private`.
- A new wait command for waiting on backgrounded processes
- The machine hostname, where available, is now exposed as the `$hostname` reserved variable
- Abbreviations can be tab-completed
- Notifications about crashed processes are now always shown, even in command substitutions
- True color is now enabled in [neovim](https://neovim.io/?ref=itsfoss.com) by default
- `xclip` support has been added to the clipboard integration
- Added support for 52 commands autocompletes, such as `hugo`, `clang`, `[eopkg](https://itsfoss.com/eopkg-commands/)` and `curl`
- Pressing Ctrl-C while running a script now reliably terminates fish
- Major rework of terminal and job handling to eliminate bugs
- Improvements to the manual page completion generator
- Build scripts for most platforms no longer require bash
- Ships with a new build system based on CMake

![Fish Shell 3.0 Released](https://itsfoss.com/content/images/wordpress/2019/01/fish-shell-3-800x450.png)

## How to Install fish Shell 3.0

Before you install fish, you can [try it in the browser](https://rootnroll.com/d/fish-shell/?ref=itsfoss.com).

### Install fish 3.0 on Linux

Packages for Debian, Fedora, openSUSE, and Red Hat Linux are available from the [openSUSE Build Service](https://software.opensuse.org/download.html?project=shells%3Afish&package=fish&ref=itsfoss.com).

There is a [fish PPA](https://launchpad.net/%7Efish-shell/+archive/ubuntu/release-3?ref=itsfoss.com) for Ubuntu systems. Here are the commands:

`sudo apt-add-repository ppa:fish-shell/release-3`  
`sudo apt update`  
`sudo apt install fish`

For Arch and Arch-based systems, you can use `pacman -S fish` to install fish.

Solus users can install fish using this command: `eopkg install fish`.

### Install fish 3.0 on macOS

macOS users can either use [Homebrew](http://brew.sh/?ref=itsfoss.com) `brew install fish` or [Macports](https://www.macports.org/?ref=itsfoss.com) `sudo port install fish` to install fish.

### Install fish 3.0 on FreeBSD

If you run FreeBSD, you can install fish with the `pkg install fish` command.

### Install fish 3.0 on Windows

There are two ways you can install fish on Windows. On Windows 10, you can install fish on the Windows Subsystem for Linux with `sudo apt install fish`. If you are using a previous version of Windows, you can use [Cygwin](https://cygwin.com/?ref=itsfoss.com) to install fish.

## Final Thoughts on fish 3.0

I have used fish on and off in the past. I never really put aside the time to learn it. Funnily enough, the last time I used it (a couple weeks ago), I ran into a problem running `sudo apt update && sudo apt upgrade`. The command failed and gave me an error message saying that I need to use `and` instead of `&&`. It wasn’t a major problem, I just rewrote the command and it worked. Now they added support for `&&` in version 3.0.0\. Guess I won’t have to worry about that in the future.

Have you ever used [fish shell](https://fishshell.com/?ref=itsfoss.com)? If not, what is your favorite shell? Let us know in the comments below.

If you found this article interesting, please take a minute to share it on social media, Hacker News or [Reddit](http://reddit.com/r/linuxusersgroup?ref=itsfoss.com).