Nie udało mi się znaleźć żadnej dokumentacji wskazującej, że jest to możliwe, ale czy istnieje jakiś sposób na przekazanie nazwy hosta, z którą chcesz się połączyć, jako argumentu wiersza polecenia w programie Microsoft Remote Desktop Connection dla komputerów Mac?
Kilka podstawowych informacji dla zainteresowanych:
Jestem administratorem systemu i właśnie przechodzę na MacBooka Air jako mój główny komputer roboczy z laptopa z systemem Windows 7. Często używam klienta usług pulpitu zdalnego do łączenia się z serwerami, aw systemie Windows używam Launchy jako programu uruchamiającego klawiaturę. Przypisałem „rdp” jako słowo kluczowe, więc kiedy wywołuję Launchy, wpisz „rdp {tab} nazwa serwera” przekazuje tekst po klawiszu Tab jako nazwę hosta do mstsc.exe (tj. Mstsc.exe / v: nazwa serwera) . Powoduje to, że klient pulpitu zdalnego otwiera sesję pod określoną nazwą hosta.
źródło
Odpowiedzi:
Klient Microsoft Remote Desktop nie ma dostępu do wiersza poleceń. Ale darmowy i najdoskonalszy klient pulpitu zdalnego CoRD obsługuje
rdp://
łącza, które pozwoliłyby Ci zadzwonić z wybranego programu uruchamiającego lub nawet zaopen
pomocą wiersza poleceń.Dokumentacja CoRD na github określa, jak używać parametrów zakodowanych w adresie URL do otwierania w pełni skonfigurowanych sesji RDP.
rdp: // składnia adresu URL
CoRD obsługuje adresy URL rdp: //, których można używać z wielu miejsc w systemie OS X. Niestety nie ma możliwości rozszerzenia okna dialogowego Finder „Połącz z serwerem”, które obsługuje uruchamianie adresów URL VNC, więc nie możemy stąd uruchomić CoRD . Jeśli Apple to zmieni (lub jeśli ktoś wie, jak to przedłużyć), chcielibyśmy o tym usłyszeć.
źródło
rdp://
łącza (choć używają innego schematu). Zobacz odpowiedź Jacka Douglasa.Nie kocham CoRD. Działa, ale wydaje się okresowo płatkować. Zrobiłem własny skrypt CLI dla Microsoft RDP. Stworzyłem skrypt sed + open bash, aby umożliwić przekazanie 2 argumentów do klienta Microsoft Remote Desktop. Mogę podać nazwę hosta i mogę rzucić przełącznik, aby połączyć się z konsolą hostów Server 2003.
Wiem, że można to zrobić dalej. Na przykład:
Oto jak to zrobiłem:
Zawartość mojego skryptu bash :
Alias dodany do .bash_profile
(Zakłada się, że mój plik skryptu rdp.sh znajduje się w moim katalogu domowym, ~ /)
Ustaw skrypt jako wykonywalny:
Uruchom skrypt:
Oto przykład, który zawiera przełącznik konsoli. Zostawiłem w skrypcie linię debugującą, która pokazuje, co zostanie umieszczone w pliku t.rdp.
źródło
open -na "/Applications/Microsoft Remote Desktop.app/Contents/MacOS/Microsoft Remote Desktop" path/to/profile.rdp
Nie wiem, kiedy to się zmieniło, ale klient Microsoft Remote Desktop obsługuje teraz łącza rdp: //:
Wszystkie atrybuty są udokumentowane na stronie TechNet obsługi schematu URI klienta usług pulpitu zdalnego .
źródło
Po konsultacji z Microsoft TAM odkryłem, że nie ma sposobu na przekazanie nazwy hosta do klienta Microsoft za pośrednictwem wiersza poleceń.
CoRD, z drugiej strony, może faktycznie robić to, co chciałbym, obsługując linki rdp: //. Po zainstalowaniu CoRD, jeśli wpiszesz
w terminalu lub iTerm2, otworzy sesję do gospodarza nazwa_serwera w kręgowego.
Używam Alfreda (http://www.alfredapp.com/) jako mojej „Launchy” alternatywy na Macu, właśnie ją odkryłem po długim okresie użytkowania Quicksilver. Kupiłem Powerpack dla Alfreda, który pozwala korzystać z wielu rozszerzeń, z których jedno daje możliwość uruchamiania skryptów powłoki. Więc utworzyłem rozszerzenie skryptu powłoki, przypisałem słowo kluczowe rdp, ustawiłem na „wymagany parametr” i ustawiłem skrypt na:
To pozwala mi wywoływać alfred i wpisać rdp {tab} nazwa serwera {return}, aby otworzyć sesję Podłączania pulpitu zdalnego do zdalnego serwera.
źródło
Powyższy skrypt nie działa z najnowszym „Pulpitem zdalnym Microsoft”. Odwoływanie się do aplikacji za pomocą zmiennej było problematyczne, więc na stałe zakodowałem ścieżkę (która różni się od oryginalnego przykładu). Musiałem także usunąć parametr „--args” i zaczął działać.
źródło
Ma to głównie na celu uzupełnienie innych odpowiedzi i uniknięcie włamań skryptowych:
(TL; DR: może wcześniej nie było prawdą, ale protokół RDP firmy Microsoft obsługuje teraz automatycznie pliki rdp
open
)Mam już wiele profili zapisanych w GUI RDP. (BTW, plist jest
~/Library/Containers/com.microsoft.rdc.mac/Data/Library/Preferences/com.microsoft.rdc.mac.plist
, jak zawsze,plutil -convert xml1 xyz.list
do oglądania przez ludzi)(Więcej informacji: https://macmule.com/2013/10/22/how-to-create-a-microsoft-remote-desktop-8-connection/ )
Aby było to możliwe do polecenia:
.rdp
plik, zauważając, że nie będzie zawierał informacji o haśleopen
nazwa pliku.rdp
z wiersza poleceńźródło
Myślę, że równie łatwo byłoby stworzyć szablon dla każdego serwera, z którym chcesz się połączyć, a także taki z pustym polem serwera dla tych połączeń „raz w życiu”. Po prostu umieszczam je w folderze i albo je nazywam, albo numeruję, aby porządek był prawidłowy. Przeciągnij folder do doku i mam miejsce, w którym mogę kliknąć, aby uzyskać szybką listę szablonów rdp, które mogę następnie kliknąć jednym przyciskiem, aby się połączyć. Lub mogę Command + Spacja i wpisz nazwę pliku i naciśnij klawisz Enter, aby go uruchomić. LUB MOŻESZ TYPEY TYPEY TYPEY TYPE i zainstalować wszystkie rodzaje aplikacji do zarządzania.
źródło