/// <summary> /// Send all files over to the remote client. Make sure the directory exists. /// </summary> /// <param name="connection"></param> /// <param name="dumpLine"></param> private async Task SendAllFiles(ISSHConnection connection, Action <string> dumpLine) { foreach (var f in _filesToCopyOver) { string linuxPath = $"{f.remoteLinuxDirectory}/{f.localFileName.Name}"; dumpLine?.Invoke($"Copying {f.localFileName.Name} -> {linuxPath}"); await connection.ExecuteLinuxCommandAsync($"mkdir -p {f.remoteLinuxDirectory}", dumpLine); await connection.CopyLocalFileRemotelyAsync(f.localFileName, linuxPath); } _filesToCopyOver.Clear(); }