0

我现在在做什么——

  1. MachineBMachineA(Windows 环境)执行 shell 脚本。
  2. 然后等待 shell 脚本完成它的任务,在我的例子中,它会将输出写入一个文本文件。
  3. 在 shell 脚本完成所有任务后,意味着它完成了将所有内容写入 txt 文件,然后将该 txt 文件MachineAMachineB.

所以为此我写了一个Windows Batch file可以完成上述任务的,它对我来说工作得很好。下面是我目前使用的 Windows Bat 文件。

plink uname@machineB -m email.sh 
pscp  uname@machineB:/export/home/uname/jk_attachment22.txt C:\PLINK\foo.txt

但是通过使用上面的windows批处理文件,我需要输入两次密码,这很痛苦,首先我需要输入第一行,然后再输入第二行。

我的问题是-

那么有什么方法可以通过password在命令提示符下键入一次来运行上述 Windows 批处理文件。任何建议将不胜感激。

这是我在寻找时所拥有的/.ssh folder

更新:

bash-3.00$ cd ~/.ssh
bash-3.00$ pwd
/home/uname/.ssh
bash-3.00$ ls -lt
total 2
-rw-r--r--   1 uname   gid-uname     489 Jul 26 18:55 known_hosts

所以我需要在这里做一些其他的改变?

4

2 回答 2

0

我会使用 ssh 密钥跳过密码和身份验证。 http://www.debian-administration.org/articles/152

于 2012-07-30T19:01:19.463 回答
0

在命令行实用程序中使用 -pw 选项。

假设您将批处理文件命名为 TWINKIE.BAT。在命令提示符下,您将键入“TWINKIE 密码”,其中“密码”是您要使用的实际密码。

C:\>twinkie password

“密码”作为第一个命令行变量 %1 传递到您的批处理文件中。您的批处理文件将是:

plink -pw %1 uname@machineB -m email.sh
pscp  -pw %1 uname@machineB:/export/home/uname/jk_attachment22.txt C:\PLINK\foo.txt
于 2012-07-30T20:02:20.183 回答