来自批处理文件和脚本的putty?

时间:2014-02-15 21:43:05

标签: batch-file putty pscp

我有一个打开putty的批处理文件就好了。 c:\ putty.exe root@192.168.12.34 -pw boyhowdy。但为了使这项工作对我来说,我需要了解如何包含一个命令的脚本,以便它将在putty工具下运行。像mount -o remount,rw /。或者这是我可以使用名为pscp的工具做的事情。我对这些工具很熟悉,并且可以使用一些指导。我有一个这些脚本的bunck,并且真的想自动化它们。三江源

1 个答案:

答案 0 :(得分:4)

  1. 如果您的目标是通过putty远程执行shell命令,您应该查看plink(没有gui的putty,换句话说是Windows的ssh客户端),然后将标准的here-doc技术应用于plink

  2. plink是putty集合的一部分,也可以从same page as putty下载。

  3. 如果要执行本地脚本,请使用

      

    plink user @ host -m local_script.sh

  4. 例如。假设你正在某个Windows机器上运行(如果putty套件也在Linux上运行)并且想要在某个远程盒子上执行一批命令,你可以在本地机器上创建一个shell脚本(比如mount.sh)并运行它像这样:

    C:\> type mount.sh  
    whoami  
    hostname  
    /usr/sbin/mount -t iso9660 -o ro /dev/cdrom /mnt  
    /usr/sbin/mount | grep mnt  
    C:\> plink remoteuser@remotehost -pw secret -m mount.sh  
    remoteuser  
    remotehost  
    /dev/cdrom on /mnt type iso9660 (ro)
    
  5. 此外,最好复制公钥,以便密码不会在某个批处理文件中编码。

  6. 最后,请注意,并非所有在交互式shell进程中定义的环境变量都可在远程shell进程中使用。您可能需要在脚本开头“获取”某些配置文件脚本。