Выполнение командного файла Windows

Что я делаю в настоящее время

  1. Выполнить сценарий оболочки на MachineB от MachineA Окружение Windows.
  2. Затем подождите, пока скрипт оболочки завершит свою задачу, в моем случае он запишет вывод в текстовый файл.
  3. И после того, как сценарий оболочки выполнил все свои задачи, он завершил запись всего в текстовый файл, а затем скопировал этот текстовый файл в MachineA (Среда Windows) из MachineB,

Так что для этого я написал 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, мне нужно набрать пароль два раза, что является болью, сначала мне нужно набрать для первой строки, а затем снова для второй строки.

Мой вопрос-

Так есть ли способ я могу запустить вышеупомянутый пакетный файл Windows, просто набрав password один раз в командной строке. Любые предложения будут оценены.

Это то, что у меня есть, когда я искал /.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

Так что мне нужно внести некоторые другие изменения здесь?

2 ответа

Я бы пропустил пароль и авторизацию с помощью ключа ssh. http://www.debian-administration.org/articles/152

Используйте параметр -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
Другие вопросы по тегам