GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
SOURCE(1) fish-shell SOURCE(1)

source - evaluate contents of file

source FILE [ARGUMENTS ...]
SOMECOMMAND | source
. FILE [ARGUMENTS ...]

source evaluates the commands of the specified FILE in the current shell as a new block of code. This is different from starting a new process to perform the commands (i.e. fish < FILE) since the commands will be evaluated by the current shell, which means that changes in shell variables will affect the current shell. If additional arguments are specified after the file name, they will be inserted into the argv variable. The argv variable will not include the name of the sourced file.

fish will search the working directory to resolve relative paths but will not search PATH .

If no file is specified and a file or pipeline is connected to standard input, or if the file name - is used, source will read from standard input. If no file is specified and there is no redirected file or pipeline on standard input, an error will be printed.

The exit status of source is the exit status of the last job to execute. If something goes wrong while opening or reading the file, source exits with a non-zero status.

Some other shells only support the . alias (a single period). The use of . is deprecated in favour of source, and . will be removed in a future version of fish.

source creates a new local scope; set --local within a sourced block will not affect variables in the enclosing scope.

The -h or --help option displays help about using this command.

source ~/.config/fish/config.fish
# Causes fish to re-read its initialization file.


In fish versions prior to 2.3.0, the argv variable would have a single element (the name of the sourced file) if no arguments are present. Otherwise, it would contain arguments without the name of the sourced file. That behavior was very confusing and unlike other shells such as bash and zsh.

2024, fish-shell developers

July 5, 2025 4.0

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.