<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size: 12pt; color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;">
<p style="margin-top:0; margin-bottom:0">Hi,</p>
<p style="margin-top:0; margin-bottom:0">First time writer here on the erlang questions list :)</p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0">I am wondering if anyone knows about how the erlang ssh handles I/O? More details can be found below.<br>
</p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0">Erlang version: <span style="color: rgb(189, 19, 152);">
21.0</span></p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0">Start of SSH server on testing (Windows) machine:</p>
<p style="margin-top:0; margin-bottom:0"><span><span style="color:rgb(189,19,152)">application:ensure_all_started(ssh),</span><br>
<span style="color:rgb(189,19,152)">Options = [{system_dir, filename:join(SSHPath, "daemon")}, {user_dir, ?DIR}, {subsystems, [ssh_sftpd:subsystem_spec([{cwd, SSHPath}])]}], </span></span></p>
<p style="margin-top:0; margin-bottom:0"><span><span style="color:rgb(189,19,152)"></span></span><span style="color:rgb(189,19,152); font-size:12pt">ssh:daemon(?ipaddr, ?port, Options]).</span><span><br>
</span></p>
<pre style=""><pre style=""><span style="font-size:12pt; font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols"></span></pre></pre>
<div>Test module:</div>
<div><span style="color:rgb(189,19,152)">-module(sshtest).</span></div>
<div><span style="color:rgb(189,19,152)">sshIO() -></span></div>
<div><span style="color:rgb(189,19,152)">   io:format("test1~n"),</span></div>
<div><span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:16px; color:rgb(189,19,152)">   io:format("test2\n"),</span><br>
</div>
<div><span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:16px; color:rgb(189,19,152)">  test3.</span></div>
<div><br>
</div>
<div><br>
</div>
<div>Test run from my own machine:</div>
<div><span style="color:rgb(189,19,152); font-size:12pt">> ssh $IPADDR 'ssh</span><span style="color:rgb(189,19,152); font-size:12pt">test</span><span style="color:rgb(189,19,152); font-size:12pt">:</span><span style="color:rgb(189,19,152); font-size:12pt">sshIO</span><span style="color:rgb(189,19,152); font-size:12pt">(</span><span style="color:rgb(189,19,152); font-size:12pt">).'</span></div>
<div><span style="color:rgb(189,19,152)">test3</span></div>
<br>
<p></p>
<p style="margin-top:0; margin-bottom:0">For some reason any io:format/io:fwrite does not travel back over the SSH connection. If I connect to some Linux machine that already has a (non-erlang) SSH server running and I try to run some random bash script then
 any echo I have in the script will travel back over the SSH connection.<br>
<br>
A test I did with a bash script towards a Linux server, <br>
Bash script (~/test.sh):</p>
<p style="margin-top:0; margin-bottom:0"><span style="font-size:12pt">echo "test1"</span><br>
</p>
<p style="margin-top:0; margin-bottom:0"><span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:16px">echo "test2"</span></p>
<p style="margin-top:0; margin-bottom:0"><span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:16px"></span><span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:16px">echo
 "test3"</span></p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0"><span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:16px"></span>Test run from my own machine:<br>
<span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:12pt; color:rgb(189,19,152)">> ssh $IPADDR ./test.sh</span></p>
<p style="margin-top:0; margin-bottom:0"><span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:12pt; color:rgb(189,19,152)"></span><font color="#bd1398">test1</font></p>
<p style="margin-top:0; margin-bottom:0"><font color="#bd1398">test2</font></p>
<p style="margin-top:0; margin-bottom:0"><font color="#bd1398">test3</font></p>
<p style="margin-top:0; margin-bottom:0"><font color="#bd1398"><span style="color:rgb(0,0,0)">This is how I'd like it to work.</span></font></p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0"><font color="#bd1398"><span style="color:rgb(0,0,0)">I have been googling and reading the documentation for the ssh and related modules to no avail in regards to finding a solution to this problem. </span></font></p>
<p style="margin-top:0; margin-bottom:0">Other than this I/O problem the ssh connection works perfectly for me
<span>😊</span></p>
<p style="margin-top:0; margin-bottom:0"><span style="font-size: 12pt;">Hopefully someone here on the list has some insight into how this works.</span><br>
</p>
<p style="margin-top:0; margin-bottom:0"><font color="#bd1398"><span style="color:rgb(0,0,0)">Thankful for any help I can get :)<br>
Best regards,</span></font></p>
<p style="margin-top:0; margin-bottom:0"><font color="#bd1398"><span style="color:rgb(0,0,0)">Tommy<br>
</span></font><br>
<br>
</p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
<p style="margin-top:0; margin-bottom:0"><br>
</p>
</div>
</body>
</html>