GMTプログラムの多くは,入力データを標準入力(stdinと呼ばれる)やファイルから読み込み,出力結果を標準出力(stdoutと呼ばれる)に書き出します.この標準入力や出力は,普通にインストールされたOSで,特に何も指定しない限りではキーボードや画面ということになります.が,ファイルから入力したい/ファイルに書き出したいという場合がたびたびあります.そういうときに活躍するのがリダイレクションです.
リダイレクションは不等号マーク(「<」や「>」)を使って次のように指定します:
GMTprogram input-file >! output-file GMTprogram < input-file >! output-file GMTprogram input-file >> output-file
最初の例は,ファイルinput-fileから入力データを読み込み,ファイルoutput-fileに(画面にではなく)結果を書き出します.「>」だけでなく「>!」マークがついていますが,この「!」がつくともしすでにoutput-fileというファイルがあっても勝手に新しい内容に置き換えられてしまいます(それまでにoutput-fileにあった内容は一切合財消えてしまいます).
2番目の例も1番目と同じ挙動をします.ただし詳しく言うと少し違っていますが,詳しいことは省略します.
最後の例も1番目とよく似ていますが,すでにoutput-fileというファイルがあってもその内容は消されることがありません.GMTprogramの実行結果は,すでにoutput-fileにある内容に継ぎ足す形で後ろに書き込まれます(これをアペンドといいます).