Man page - fish(1)
Packages contains this manual
Manual
FISH
NAMESYNOPSIS
DESCRIPTION
DEBUGGING
COPYRIGHT
NAME
fish - the friendly interactive shell
SYNOPSIS
fish
[
OPTIONS
] [
FILE
[
ARG
...]]
fish
[
OPTIONS
] [
-c
COMMAND
[
ARG
...]]
DESCRIPTION
fish is a command-line shell written mainly with interactive use in mind. This page briefly describes the options for invoking fish . The full manual is available in HTML by using the help command from inside fish, and in the fish-doc(1) man page. The tutorial is available as HTML via help tutorial or in man fish-tutorial .
The following
options are available:
-c
or
--command=COMMAND
Evaluate the specified commands instead of reading from the commandline, passing additional positional arguments through $argv .
-C or --init-command=COMMANDS
Evaluate specified commands after reading the configuration but before executing command specified by -c or reading interactive input.
-d or --debug=DEBUG_CATEGORIES
Enables debug output and specify a pattern for matching debug categories. See Debugging below for details.
-o or --debug-output=DEBUG_FILE
Specifies a file path to receive the debug output, including categories and fish_trace . The default is standard error.
-i or --interactive
The shell is interactive.
--install[=PATH]
When built as self-installable (via cargo), this will unpack fish's data files and place them in ˜/.local/share/fish/install/ . fish will also ask to do this automatically when run interactively. If PATH is given, fish will install itself into a relocatable directory tree rooted at that path. That means it will install the data files to PATH/share/fish and copy itself to PATH/bin/fish.
-l or --login
Act as if invoked as a login shell.
-N or --no-config
Do not read configuration files.
-n or --no-execute
Do not execute any commands, only perform syntax checking.
-p or --profile=PROFILE_FILE
when fish exits, output timing information on all executed commands to the specified file. This excludes time spent starting up and reading the configuration.
--profile-startup=PROFILE_FILE
Will write timing for fish startup to specified file.
-P or --private
Enables private mode : fish will not access old or store new history.
--print-rusage-self
When fish exits, output stats from getrusage.
--print-debug-categories
Print all debug categories, and then exit.
-v or --version
Print version and exit.
-f or --features=FEATURES
Enables one or more comma-separated feature flags .
The fish exit status is generally the exit status of the last foreground command .
DEBUGGING
While fish provides extensive support for debugging fish scripts , it is also possible to debug and instrument its internals. Debugging can be enabled by passing the --debug option. For example, the following command turns on debugging for background IO thread events, in addition to the default categories, i.e. debug , error , warning , and warning-path :
> fish --debug=iothread
Available categories are listed by fish --print-debug-categories . The --debug option accepts a comma-separated list of categories, and supports glob syntax. The following command turns on debugging for complete , history , history-file , and profile-history , as well as the default categories:
> fish --debug='complete,*history*'
Debug messages output to stderr by default. Note that if fish_trace is set, execution tracing also outputs to stderr by default. You can output to a file using the --debug-output option:
> fish --debug='complete,*history*' --debug-output=/tmp/fish.log --init-command='set fish_trace on'
These options can also be changed via the FISH_DEBUG and FISH_DEBUG_OUTPUT variables. The categories enabled via --debug are added to the ones enabled by $FISH_DEBUG, so they can be disabled by prefixing them with - ( reader-*,-ast* enables reader debugging and disables ast debugging).
The file given in --debug-output takes precedence over the file in FISH_DEBUG_OUTPUT .
COPYRIGHT
2024, fish-shell developers