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.