Удаленно запустить скрипт на Unix, получить вывод локально?

Мне нужно запустить сценарий (Tcl или что-то еще) на удаленной машине Unix из (локальной) командной оболочки Windows, и я хочу, чтобы stdout/stderr сценария отображался в Windows CLI. Код выхода также был бы полезен.

возможно ли это с помощью ssh (putty)? Или любым другим способом?

спасибо!

20
задан Cristi Diaconescu
02.02.2023 22:24 Количество просмотров материала 2534
Распечатать страницу

5 ответов

это значение по умолчанию для SSH. Если вы хотите перенаправить вывод удаленно, поместите символ перенаправления (обычно ">") внутри кавычек команды.

например:

ssh remote_host "ls > /tmp/file_on_remote_host.txt"

для сохранения вывода локально на хосте Windows,

ssh remote_host "ls" > .\file_on_local_host.txt

чтобы объединить stderr удаленно и сохранить его и stdout локально,

ssh remote_host "ls 2>&1" > .\combined_output_on_local_host.txt
38
отвечен kmarsh 2023-02-04 06:12

то, что я искал, это боковой удар шпатлевки,плинк.exe. В отличие от putty, которая действует как эмулятор терминала,plink действует как нормальная (неинтерактивная) программа CLI.

используя его, я мог бы сделать это в cmd.exe и получить выходные данные удаленной команды, сохраненные локально.

\> plink remote_host "ls -l" > log.txt

лучше всего, это работает для ssh а также telnet !

просто для справки, это доступно варианты:

PuTTY Link: command-line connection utility
Release 0.59
Usage: plink [options] [user@]host [command]
       ("host" can also be a PuTTY saved session name)
Options:
  -V        print version information and exit
  -pgpfp    print PGP key fingerprints and exit
  -v        show verbose messages
  -load sessname  Load settings from saved session
  -ssh -telnet -rlogin -raw
            force use of a particular protocol
  -P port   connect to specified port
  -l user   connect with specified username
  -batch    disable all interactive prompts
The following options only apply to SSH connections:
  -pw passw login with specified password
  -D [listen-IP:]listen-port
            Dynamic SOCKS-based port forwarding
  -L [listen-IP:]listen-port:host:port
            Forward local port to remote address
  -R [listen-IP:]listen-port:host:port
            Forward remote port to local address
  -X -x     enable / disable X11 forwarding
  -A -a     enable / disable agent forwarding
  -t -T     enable / disable pty allocation
  -1 -2     force use of particular protocol version
  -4 -6     force use of IPv4 or IPv6
  -C        enable compression
  -i key    private key file for authentication
  -noagent  disable use of Pageant
  -agent    enable use of Pageant
  -m file   read remote command(s) from file
  -s        remote command is an SSH subsystem (SSH-2 only)
  -N        don't start a shell/command (SSH-2 only)
  -nc host:port
            open tunnel in place of session (SSH-2 only)
20
отвечен Cristi Diaconescu 2023-02-04 08:29

да если вы используете клиент putty ssh вы увидите любой вывод командной строки ваш скрипт будет производить. Чтобы получить код выхода после выполнения скрипта, введите:

echo $?
3
отвечен Mark 2023-02-04 10:46

другой способ получить файл журнала на вашем компьютере windows : - монтировать WINDOWS m / c на Unix систему ( в зависимости от разновидности UNIX, это возможно с помощью Samba сервера) - запуск скрипта из windows с помощью любого удаленного клиента - журнал сценарий в подмонтированном

вы можете увидеть вывод в реальном времени, если вы получите UNIX эквивалент tail для Windows.

1
отвечен James 2023-02-04 13:03

еще один ответ:

сохранить все ваши команды Linux в cmdlist.txt файл и используйте следующую команду.

плинк.ехе -СШ-ПВ выходного файла passwd uname@1.2.3.4 .txt

passwd ==пароль для входа в систему устройства

uname ==имя пользователя для устройства login

1.2.3.4 ==IP-адрес устройства

после этой команды выполнено, все ваши командиры.команды txt будут выполняться на удаленном устройстве, а выходные данные сохраняются в файле output.txt

убедитесь, что сохранили плинк.exe и cmdlist.txt в том же каталоге, и вы указываете свое приглашение dos в тот же каталог.

0
отвечен manjesh23 2023-02-04 15:20

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх