Terminal Interface ================== While :ref:`running one of the pilot binaries ` you can, at any time, hit the ```` key which interrupts the log output and gives you a terminal prompt. You can now execute one of several commands. Type it in and press ```` to execute. Commands that have an output keep the log paused after execution, to give you time to look at it. The log continues when you press ```` again. The following commands are currently available: * ``quit`` exits the application * ``debug [level]`` changes the level of the output. The bigger the number, the more log messages you get. * ``errors`` outputs the last error messages * ``topic [expr]`` searches all topic names for ``expr``. If there is no exact match, all topics that ``expr`` is a prefix of are shown. If there are none, all matches are shown. * ``module [expr]`` lists all modules that ``expr`` matches on. If there is an exact match, it displays more detailed information for that module. * ``grep `` restricts terminal output to messages that contain ``expr``. * ``journal [expr]`` does the same as ``grep`` but first shows all past log messages that contain ``expr``. * ``spy [expr]`` does the same as ``dump`` but without the actual message content. * ``dump [expr]`` outputs the messages on all topics that match ``expr``. * ``htop [field]`` shows the modules with the highest CPU load in a table that refreshes regularly. ``field`` can be ``avg`` to change the sorting. * ``exec [.method [args...]]`` and ``call [.method [args...]]`` invoke the given method of the given module with the given arguments. ``exec`` waits for the command to finish and displays the result while ``call`` performs an asynchronous call. If no method is given, a list of method signatures for the module is shown. While typing, the terminal will provide you with suggestions for the command and possible arguments. Press the ```` key to complete, press it twice to get a list of suggestions. You can also use the up and down arrows the scroll through the history of past commands.