Basically I've set up a few Raspberry Pis running different programmes, and I'd like to see what is being outputted on them. I can obviously connect via SSH, but that's a new tty session. Tried googling it, but I think my terminology is a little odd!

  • Your terminology is a little odd yes :). Could you give an example so we can understand what you mean?
    – terdon
    Aug 27, 2013 at 12:19
  • So I've got a Bash script running on the Raspberry Pi, and I want to remote login and view the output of that Bash script remotely. The Bash script is requiring user input on the Raspberry Pi. Like when I access via SSH it's a new session, rather than monitoring what's happening on the physical device.. Aug 27, 2013 at 12:24
  • Look for "process standard output" or "proc linux stdout" (eg see here). This is also relevant (monitoring a terminal). Aug 27, 2013 at 12:58
  • If you're running something interactive, you might want to start it in a screen session: superuser.com/a/454914/223699. You could then attach to the screen to see what is going on. Aug 27, 2013 at 20:01

2 Answers 2


try screen:

Logon to a Terminal and type apt-get install screen to install it.
Start screen by typing screen.
Tap Enter to get past the welcome screen.
start a process, for example a slow download:

curl --limit-rate 5K \

Press ^ad - Ctrl+a (Release Buttons) d - to detach.
Close the terminal.
logon as the same user (via SSH if you like) and type screen -r to resume.

screen can do a lot more, check out man screen.

As a side note, if you want your process to start on boot you should consider using an init script and make your process write logfiles.

  • Four years later and I've accepted this (apologies for being somewhat late!). Thanks to you however I now use screen all the time :) May 8, 2017 at 15:33
  • 5 years after that i read your comment :D - i switched to tmux in recent years. if you like screen i would recommend trying it Feb 8 at 12:43

As far as I know, there is no way of observing the output of a command run in a separate shell. Each shell (bash , for example) instance is a separate entity and you cannot communicate with it from a different shell.

The only way to monitor output would be to have your command save its progress in a file and then monitoring that file. For example, on the Pi:

some_command > some_file

or, to monitor standard error instead of standard output:

some_command 2> some_file

You can then watch the progress from another computer by running

ssh user@pi tail -f /path/to/some_file

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.