EDIT: This may only work for certain types of terminals. It is best to run one more command of
disown after starting your commands like below so the applications are disassociated with the terminal window.
From a terminal window, type in
nohup geany > /dev/null
nohup geany >/dev/null &
nohup allows the application to be ran and immune to hangups, so closing the terminal window would have no effect on the application being run. Adding the
>/dev/null to the command prevents the creation of a
nohup.out in each directory the application is being run from.
From the man page:
nohup - run a command immune to hangups, with output to a non-tty
nohup COMMAND [ARG]...
$ disown --help
disown: disown [-h] [-ar] [jobspec ... | pid ...]
Remove jobs from current shell.
Removes each JOBSPEC argument from the table of active jobs. Without
any JOBSPECs, the shell uses its notion of the current job.
-a remove all jobs if JOBSPEC is not supplied
-h mark each JOBSPEC so that SIGHUP is not sent to the job if the
shell receives a SIGHUP
-r remove only running jobs
Returns success unless an invalid option or JOBSPEC is given.