Koduję program pulpitu C # w oknach i niektórychProgramy Matlab na serwerze Linux. Jak mogę to zrobić - wybierz lokalne dane za pomocą programu C #, a następnie przenieś dane do programów Matlaba. Po przetworzeniu danych na serwerze Linux, wyniki zostaną przesłane do programu komputerowego C #? Odpowiedź Żądanie
Odpowiedzi:
1 dla odpowiedzi № 1Zacznę od wypróbowania następującego "przepisu". Najpierw upewnij się, że masz dostęp ssh do serwera.
- Zapisz dane z C # do pliku w formacie przyjaznym dla Matlab, zalecam plik binarny, ale plik tekstowy również jest OK.
- Skopiuj dane na serwer, używając np. Klienta scp WinSCP. Można to zrobić z C # przy użyciu
Process
klasa, aby wysłać polecenie wykonania wiersza polecenia. - Wyślij zdalne wywołanie do programu Matlab, z C # za pomocą jakiejś biblioteki SSH (nie jestem zaznajomiony z C #, ale jestem pewien, że jest to możliwe) .Możesz znaleźć opcję uruchamiania Matlaba
-r
przydatne, aby uruchomić Matlab i wywołać skrypt. - Upewnij się, że kod Matlaba zapisuje wyniki na dysku.
- Aby uzyskać wyniki z powrotem na komputerze lokalnym, można ponownie skopiować go ze zdalnego serwera przy użyciu
scp
, najłatwiej jest spróbować go skopiowaćwewnątrz pętli, dopóki kopiowanie nie powiedzie się, z przerwą między próbami i górnym limitem czasu (na wypadek, gdyby coś poszło nie tak po stronie serwera, nie chciałbyś czekać na zawsze) .Jeśli chcesz, aby było mniej " dirty ", możesz ustanowić połączenie klient-serwer tcp między maszyną zdalną i lokalną, a zdalny komputer wysłać wiadomość, gdy plik będzie gotowy do kopiowania.Możesz nawet pobrać dane przez tcp, zamiast zapisywać do pliku, jeśli to nie jest za dużo danych.