Jak uruchomić duży plik poleceń w PuTTY przy użyciu automatycznego logowania w wierszu polecenia (CMD)?


0

Korzystam z następującego polecenia w CMD, aby zdalnie otworzyć Putty (używając centos 6) i wykonać polecenia zapisane w pliku polecenie.txt zapisane na komputerze.

putty.exe root@ip port -pw password -t -m commands.txt

Działa to jednak tylko wtedy, gdy plik Command.txt ma rozmiar około 5 KB.

Masz 2 pytania, jeśli ktoś może pomóc, proszę:

a) Pytanie 1: Co powinienem zrobić, aby móc uruchomić plik Command.txt o większym rozmiarze?

b) Pytanie 2: W CMD, jeśli zrobię 3 wiersze poleceń z 3 różnymi plikami poleceń, powiedz „polecenia1.txt”, „polecenia2.txt” i „polecenia3.txt” i wklej wszystkie zadania poniżej razem w CMD, otworzą 3 szpachle i róbcie wszystko jednocześnie.

putty.exe root@ip port -pw password -t -m commands1.txt
putty.exe root@ip port -pw password -t -m commands2.txt
putty.exe root@ip port -pw password -t -m commands3.txt

Jak poprosić CMD o wykonanie dokładnie w sekwencji zamiast otwierania wszystkiego w tym samym czasie?

To otworzy serwer, uruchom

putty.exe root@ip port -pw password -t -m commands1.txt

tylko po zakończeniu wykonywania

putty.exe root@ip port -pw password -t -m commands2.txt

i tylko wtedy, gdy zakończy się wykonywanie

putty.exe root@ip port -pw password -t -m commands3.txt

Jak to zrobić, aby nie wykonywać wszystkich 3 zadań jednocześnie, ale jeden po drugim w dokładnie takiej kolejności, w jakiej je umieściłem?


Chociaż i tak jest to złe podejście, nie sądzę, aby po dodaniu trzech putty.exewywołań do pliku .cmd były one wykonywane równolegle. Są wykonywane sekwencyjnie.
Martin Prikryl

Cześć Prikryl, dzięki za odpowiedź, teraz działa. Jednak każde polecenie wydane z pliku command.txt wydaje dźwięk, czy istnieje sposób na wyłączenie tego sygnału? Ponadto, jeśli plik znajduje się w folderze / home / na serwerze, próbowałem tego, ale nie można go uzyskać, jak mogę poprosić go o pobranie pliku command.txt z określonego folderu? plink -P nazwa użytkownika portu @ host </home/command.txt Dziękuję bardzo!
Joao

1) Upewnij się, że plik ma uniksowe zakończenia linii. 2) Twoje pytanie dotyczyło lokalnego pliku poleceń. Plik polecenia zdalnego to zupełnie inne pytanie - po prostu uruchom go! Jest to również wspomniane w mojej odpowiedzi.
Martin Prikryl

Cześć Prikryl, dziękuję, odpowiadając. Jeśli chodzi o to, co tutaj czytam, muszę przekonwertować plik command.txt na zakończenia linii unix, a następnie włączyć tryb cichy, aby nie wydawać sygnału dźwiękowego, prawda? A jeśli chodzi o pytanie tutaj w tym temacie, otworzyłoby to polecenie.txt z katalogu głównego serwera: plink -P port nazwa użytkownika @ host <polecenie.txt Czy wiesz, co powinienem dołączyć, aby otworzył polecenie.txt z folderu / home /? Dzięki
Joao

Nie! To polecenie czyta plik lokalny, a nie plik z folderu głównego serwera!
Martin Prikryl

Odpowiedzi:


1

Ograniczenie rozmiaru polecenia jest narzucane przez serwer, nie jest to ograniczenie PuTTY.


Jednym z rozwiązań jest przesłanie pliku na serwer (np. Za pomocą psftplub pscp), nadanie mu xuprawnień, a następnie użycie PuTTY do jego wykonania.


Chociaż właściwym narzędziem do automatyzacji wykonywania poleceń jest PLink (z pakietu PuTTY) .

Plink jest aplikacją konsolową, dzięki czemu może odczytywać polecenia ze standardowego wejścia. W ten sposób nie ma ograniczeń, ponieważ polecenia są odczytywane i wykonywane jeden po drugim (tak jakbyś wpisał je w powłoce):

plink -P port username@host < command.txt
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.