Text editors
To create a text file, you can use any one of the many text editor choices that exist: gedit, pico, nano, emacs, vi, etc. If you aren't familiar with any of these options, we recommend using gedit if you are using a Linux computer, and open -e if you are using a Mac (this opens Mac's TextEdit program).
Running the command itself opens a text editor window:
On Linux:
gedit
On Mac:
open -e
Once inside the program, you can type in the information you needed to enter and save it using the File -> Save menu option. You can then open text files using the same command followed by the name of the file. If the file isn't saved inside the directory you are in, you would need to include the path to that file. For example, if you wanted to open file.txt that is located in your home directory, you would run something like:
On Linux:
gedit /home/nmrclass/file.txt
On Mac:
open -e /Users/nmrclass/file.txt
cat, more, less and man
Sometimes you just want to read the contents of a plain text file without actually editing it. There are a few different options for this (available on both Linux and Mac). These include cat, more, and less.
Running this command:
cat /path/to/file.txt
will write the entire contents of file.txt to your terminal screen. This is good if you want to scroll through the entire file, and most useful for short files.
This command:
more /path/to/file.txt
writes out as many lines of file.txt that can fit inside your terminal screen. After that, you can press Enter or the Down arrow key to see more of the contents line by line, or space to see the next screen of contents. If you find the information you were looking for, you can press Q, and you will exit more. The lines that have been displayed have been written to your terminal screen, so you can scroll up and read through the content again.
less is somewhat different, as the contents are not written to your terminal screen once you close it.This command:
less /path/to/file.txt
opens a program inside your terminal that will let you view and scroll through files in the same way as more. When you finish reading, press Q to exit and get back to your terminal prompt. You notice that the output of the file isn't written to your terminal screen once you exit.
For more information on any command-line program that isn't a part of Freesurfer, you can use man. For example, for more options on how to use less (such as searching inside of a file), you can run this command:
man less
man opens the user manuals for that program, which you can scroll through and exit as if it was opened using less
File extensions
The extension of the file (i.e. .txt in this example), should be whatever is appropriate for your purpose in creating this file. Some examples:
If you wanted to create an FSGD file, the extension should be .fsgd
If you wanted to create a contrast matrix, you might use the extension .mtx
You might use .dat for a design or registration matrix
To keep a record of the output of a command, you might use .log
If you are creating a script, you would end it with the extension appropriate for the type of script it is:.csh for a cshell script
.m for a matlab script
.sh for a bash script
It's not always necessary to have a file extension, but they are useful to keep track of the purpose of a file.