How does one view the terminal (tty) output externally? (Not a new ssh session, but what is currently going on)
Solution 1
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 \
http://archive.raspbian.org/raspbian/dists/wheezy/main/binary-armhf/Packages
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.
Solution 2
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
Related videos on Youtube
Elliot Reed
Software Developer / DevOps Engineer based in Nottingham in the United Kingdom.
Updated on September 18, 2022Comments
-
Elliot Reed over 1 year
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!
-
terdon over 10 yearsYour terminology is a little odd yes :). Could you give an example so we can understand what you mean?
-
Elliot Reed over 10 yearsSo 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..
-
Ярослав Рахматуллин over 10 years
-
SlightlyCuban over 10 yearsIf 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.
-
-
Elliot Reed about 7 yearsFour years later and I've accepted this (apologies for being somewhat late!). Thanks to you however I now use screen all the time :)
-
Florian Fida over 2 years5 years after that i read your comment :D - i switched to
tmux
in recent years. if you like screen i would recommend trying it