Во многих мануалах написано, что чтобы запустить команду в фоне, нужно вконце нее поставить амперсанд &.
Обычный запуск
watch data >> /tmp/data.txt
Запуск в фоне:
watch data >> /tmp/data.txt &
Проблема в том, что при таком способе запуска программа в фоне заморозится и не будет работать, пока ее не вызовут в foreground командой fg. Это происходит из-за того, что родителем запускаемого процесса будет bash-шелл, и если программа будет продолжать работать, стандартный ввод/вывод данной программы будет путаться с вводом/выводом шелла.
Запуск без остановки в фоне:
(watch data >> /tmp/data.txt &)
При таком запуске родителем программы будет непосредстванно init.
Хинт: родителя запущенной программы можно увидеть через htop, переключившись на древовидное представление.