Something broke my fish and I have no idea how to fix it so is there a way to change shell to zsh without using the command line
Something broke my fish
It's probably your fish configuration file. Use a GUI (e.g. a file browser) to rename
~/.config/fish to a different name. That means navigate to your home directory, then to the
.config subdirectory, and then rename the
fish entry to
Alternatively, configure a terminal emulator to open a different shell. Most fancy-GUI terminal emulators let you set up profiles with different settings such as which command to run. Arrange to use another shell, for example zsh, while you fix fish.
Alternatively, use your desktop environment's "launch program" feature and tell a terminal emulator to run a different command, for example
xterm -e zsh or
gnome-terminal -e zsh or whatever terminal emulator you want.
If you want to change your login shell from fish to zsh, run the
chsh command in the terminal. (Without sudo! It needs to run from your own account.) Alternatively, this can be done from most desktop environments' user administration panel.
There are more than one places the default shell of a user may be stored in a system. The default location, on a fresh installed linux system, probably will be the file
This file includes all the users of your operating system. Each line, contains information separated by a colon (:). The last part of each line represents the default shell of the user. This is the place you are looking for.
In order to edit this file without using command line, I suggest two different ways:
- You may boot from a Live CD, like ubuntu and edit the file /etc/passwd located in your disk.
- If you can't boot from a live cd, you may unplug your disk from your computer or laptop and plug it in another computer. After mounting it, you will be able to find and edit the file.