2012-12-06 05:54:59 +0000 2012-12-06 05:54:59 +0000
20
20

Hoe voer ik een opdrachtbestand uit in PuTTY met behulp van automatisch inloggen in een opdrachtprompt?

Ik gebruik het volgende om automatisch in te loggen op een externe server en voer dan opdrachten uit die in een commands.txt zijn vermeld, zoals dit:

C:\path\to\putty.exe -load "[Sessionname]" -l [user] -pw [password] -m C:\path\to\commands.txt

commands.txt bevat het volgende:

ps -elf|grep 'sometext'

Echter, wanneer ik dit probeer te doen verschijnt er een nieuw venster voor PuTTY, maar het sluit en verlaat direct na het inloggen. Hierdoor kan ik de uitvoer van de opdracht(en) niet zien.

Ik begrijp niet wat hier aan de hand is. Ben ik verkeerd in mijn benadering of moet ik meer stappen ondernemen om het PuTTY venster enige tijd te laten pauzeren voordat ik het kan verlaten?

Antwoorden (5)

11
11
11
2013-05-03 06:19:49 +0000

Eerst zou je een apart bestand moeten maken met alle commando’s die je wilt laten uitvoeren.

Voorbeeld: Ik wil graag Drupal downloaden en installeren op mijn domein met behulp van PuTTY. Om dat te doen moet u:

eerst een .txt bestand aanmaken. In dat bestand staan de commando’s. De mijne wel: “drush dl drupal” volgende regel, “drush si -account-name=[accountnaam] –account-pass=[account pass] –db-url=mysql://[gebruiker]:[pass]@localhost/[database naam] –y

Na het opslaan van dat bestand, gaat u nu een BAT bestand aanmaken of typt u het in de CMD prompt:

  • ssh. cmd
  • @echo aan [om te zien wat er aan de hand is]
  • [Navigeer naar je PuTTY installatie. De mijne is:] cd C:\Program Files\Putty
  • Start putty.exe -ssh [domain name] -l [username] -pw [password] -m [the directory of the .txt file you created which contains the codes you want to be executed]
11
11
11
2012-12-06 06:10:14 +0000

U moet plink.exe gebruiken (een opdrachtregelinterface naar de PuTTY achterkant) en niet putty.exe

U krijgt dat van de PuTTY download pagina

Zonder plink:

Het lijkt erop dat de enige manier is om de -log <logfile> opties te gebruiken en vervolgens de inhoud ervan af te drukken en te verwijderen.

2
2
2
2012-12-06 11:38:36 +0000

Uw benadering lijkt goed, maar er is één standaardinstelling in het gedrag dat u hier problemen veroorzaakt en dat u waarschijnlijk doet geloven dat er niets gebeurt.

Wanneer ik dit probeer te doen verschijnt er echter een nieuw venster voor PuTTY, maar sluit en verlaat direct na login

Uw sessie eindigt direct na het uitvoeren van het commando, en PuTTY sluit het venster standaard. Zie de documentatie van PuTTY over hoe u dit gedrag voor uw sessie kunt veranderen.

4.1.3 `Close Window on Exit'

   Finally in the Session panel, there is an option labelled `Close
   Window on Exit'. This controls whether the PuTTY terminal window
   disappears as soon as the session inside it terminates.
2
2
2
2015-05-02 10:13:57 +0000

Het zou geen probleem zijn als u alleen het batchbestand wilt aanmaken om de Unix-machine te openen. Hieronder staat het voorbeeld: "PuTTY path" -ssh machinename -l username -pw password

Het PuTTY pad moet in dubbele aanhalingstekens staan, zoals “C:\Program Files\putty.ext”

machinenaam = machinenaam zonder dubbele aanhalingstekens

wachtwoord = met aanhalingstekens

0
0
0
2014-05-13 09:11:23 +0000

In aanvulling op het antwoord van Aviram:

Hieronder staat het voorbeeld hoe u PuTTY commando’s uitvoert vanaf commando prompt:

  • Ga eerst naar de PuTTY installatiemap, bijvoorbeeld C:\Program Files\PuTTY, en voer dan het onderstaande commando uit: