Можно ли запускать некоторые SSH-команды с помощью SFTP?

Идем дальше. GeForce GTX 770 отлично работает с Ubuntu и включенными двоичными драйверами Nvidia, энергосбережением и всеми. Я использовал его на моем i5 2500K с ноября прошлого года без проблем.

0
задан 7 November 2017 в 14:13

6 ответов

Вы можете запускать команды только в локальной системе с помощью SFTP. Запустите help, чтобы узнать, какие команды доступны:

sftp> help
Available commands:
bye                                Quit sftp
cd path                            Change remote directory to 'path'
chgrp grp path                     Change group of file 'path' to 'grp'
chmod mode path                    Change permissions of file 'path' to 'mode'
chown own path                     Change owner of file 'path' to 'own'
df [-hi] [path]                    Display statistics for current directory or
                                   filesystem containing 'path'
exit                               Quit sftp
get [-afPpRr] remote [local]       Download file
reget [-fPpRr] remote [local]      Resume download file
reput [-fPpRr] [local] remote      Resume upload file
help                               Display this help text
lcd path                           Change local directory to 'path'
lls [ls-options [path]]            Display local directory listing
lmkdir path                        Create local directory
ln [-s] oldpath newpath            Link remote file (-s for symlink)
lpwd                               Print local working directory
ls [-1afhlnrSt] [path]             Display remote directory listing
lumask umask                       Set local umask to 'umask'
mkdir path                         Create remote directory
progress                           Toggle display of progress meter
put [-afPpRr] local [remote]       Upload file
pwd                                Display remote working directory
quit                               Quit sftp
rename oldpath newpath             Rename remote file
rm path                            Delete remote file
rmdir path                         Remove remote directory
symlink oldpath newpath            Symlink remote file
version                            Show SFTP version
!command                           Execute 'command' in local shell
!                                  Escape to local shell
?                                  Synonym for help

Как видно, нет команды SFTP, которая:

позволяет запускать команды на удаленной системе. Для локальных команд есть только !. позволяет добавлять или редактировать файл. Вы можете получить файл, отредактировать его локально и вернуть его обратно.

Я бы не ожидал, что что-то подобное будет существовать, поскольку общий пример использования SFTP заключается в том, чтобы помещать в тюрьму пользователей и предоставлять доступ к файлам без возможности запуска любых команд.

Вместо zipping, возможно, используйте опцию -C с sftp:

 -C      Enables compression (via ssh's -C flag).
1
ответ дан 22 May 2018 в 16:43
  • 1
    Доза это означает, что протокол sftp не поддерживает команды оболочки? От удаленного клиента или WinSCP; немного смущенный, я вижу, что WinSCP может отправлять команды через одно соединение sftp, порт 22, поэтому я предполагаю, что он поддерживается sftp; это правильно? – wpcoder 7 November 2017 в 15:13
  • 2
    @wpcoder это протокол передачи файлов. Нет причин для поддержки команд оболочки – muru 7 November 2017 в 15:15
  • 3
    Я просто делаю исследование, если это возможно, один администратор поставщика sftp сказал мне, что поддержка протокола sftp zip / unzip и удаленное редактирование файла ... просто нужно подтвердить ... протокол sftp, а не протокол ssh. спасибо – wpcoder 7 November 2017 в 15:18

Вы можете запускать команды только в локальной системе с помощью SFTP. Запустите help, чтобы узнать, какие команды доступны:

sftp> help Available commands: bye Quit sftp cd path Change remote directory to 'path' chgrp grp path Change group of file 'path' to 'grp' chmod mode path Change permissions of file 'path' to 'mode' chown own path Change owner of file 'path' to 'own' df [-hi] [path] Display statistics for current directory or filesystem containing 'path' exit Quit sftp get [-afPpRr] remote [local] Download file reget [-fPpRr] remote [local] Resume download file reput [-fPpRr] [local] remote Resume upload file help Display this help text lcd path Change local directory to 'path' lls [ls-options [path]] Display local directory listing lmkdir path Create local directory ln [-s] oldpath newpath Link remote file (-s for symlink) lpwd Print local working directory ls [-1afhlnrSt] [path] Display remote directory listing lumask umask Set local umask to 'umask' mkdir path Create remote directory progress Toggle display of progress meter put [-afPpRr] local [remote] Upload file pwd Display remote working directory quit Quit sftp rename oldpath newpath Rename remote file rm path Delete remote file rmdir path Remove remote directory symlink oldpath newpath Symlink remote file version Show SFTP version !command Execute 'command' in local shell ! Escape to local shell ? Synonym for help

Как видно, нет команды SFTP, которая:

позволяет запускать команды на удаленной системе. Для локальных команд есть только !. позволяет добавлять или редактировать файл. Вы можете получить файл, отредактировать его локально и вернуть его обратно.

Я бы не ожидал, что что-то подобное будет существовать, поскольку общий пример использования SFTP заключается в том, чтобы помещать в тюрьму пользователей и предоставлять доступ к файлам без возможности запуска любых команд.

Вместо zipping, возможно, используйте опцию -C с sftp:

-C Enables compression (via ssh's -C flag).
1
ответ дан 18 July 2018 в 03:44

Вы можете запускать команды только в локальной системе с помощью SFTP. Запустите help, чтобы узнать, какие команды доступны:

sftp> help Available commands: bye Quit sftp cd path Change remote directory to 'path' chgrp grp path Change group of file 'path' to 'grp' chmod mode path Change permissions of file 'path' to 'mode' chown own path Change owner of file 'path' to 'own' df [-hi] [path] Display statistics for current directory or filesystem containing 'path' exit Quit sftp get [-afPpRr] remote [local] Download file reget [-fPpRr] remote [local] Resume download file reput [-fPpRr] [local] remote Resume upload file help Display this help text lcd path Change local directory to 'path' lls [ls-options [path]] Display local directory listing lmkdir path Create local directory ln [-s] oldpath newpath Link remote file (-s for symlink) lpwd Print local working directory ls [-1afhlnrSt] [path] Display remote directory listing lumask umask Set local umask to 'umask' mkdir path Create remote directory progress Toggle display of progress meter put [-afPpRr] local [remote] Upload file pwd Display remote working directory quit Quit sftp rename oldpath newpath Rename remote file rm path Delete remote file rmdir path Remove remote directory symlink oldpath newpath Symlink remote file version Show SFTP version !command Execute 'command' in local shell ! Escape to local shell ? Synonym for help

Как видно, нет команды SFTP, которая:

позволяет запускать команды на удаленной системе. Для локальных команд есть только !. позволяет добавлять или редактировать файл. Вы можете получить файл, отредактировать его локально и вернуть его обратно.

Я бы не ожидал, что что-то подобное будет существовать, поскольку общий пример использования SFTP заключается в том, чтобы помещать в тюрьму пользователей и предоставлять доступ к файлам без возможности запуска любых команд.

Вместо zipping, возможно, используйте опцию -C с sftp:

-C Enables compression (via ssh's -C flag).
1
ответ дан 24 July 2018 в 17:55

ssh следует следующей структуре:

ssh {user}@{IP} {command}

Когда вы не добавили пользователя {user}, он принимает текущего пользователя, если вы не добавляете команду, которую он подключает к системе, и показывает вам приглашение. Если вы добавите команду, она выполнит ее. Пример, показывающий дату из удаленной системы:

ssh 1.1.1.1 date
rinzwind@1.1.1.1's password:
Tue Nov  7 11:17:40 CET 2017

Еще несколько примеров ...

ssh 1.1.1.1 'df -H'
ssh 1.1.1.1 uname -mrs
ssh 1.1.1.1 lsb_release -a
 ssh 1.1.1.1 gzip /tmp/test
 rinzwind@1.1.1.1's password:
 ssh 1.1.1.1
 $ pwd
 /tmp
 $ ls -ltr test.gz
 -rw-rw-rw- 1 rinzwind rinzwind 688 Nov  7 11:18 test.gz

И да, вы можете добавьте такие строки в пакет, и попросите выполнить этот скрипт.

0
ответ дан 22 May 2018 в 16:43
  • 1
    доза это относится к sftp? как реализовать в WinSCP? без терминала – wpcoder 7 November 2017 в 15:12
  • 2
    Нет, и вы не можете. Только в командной строке. – Rinzwind 7 November 2017 в 15:53

ssh следует следующей структуре:

ssh {user}@{IP} {command}

Когда вы не добавили пользователя {user}, он принимает текущего пользователя, если вы не добавляете команду, которую он подключает к системе, и показывает вам приглашение. Если вы добавите команду, она выполнит ее. Пример, показывающий дату из удаленной системы:

ssh 1.1.1.1 date rinzwind@1.1.1.1's password: Tue Nov 7 11:17:40 CET 2017

Еще несколько примеров ...

ssh 1.1.1.1 'df -H' ssh 1.1.1.1 uname -mrs ssh 1.1.1.1 lsb_release -a ssh 1.1.1.1 gzip /tmp/test rinzwind@1.1.1.1's password: ssh 1.1.1.1 $ pwd /tmp $ ls -ltr test.gz -rw-rw-rw- 1 rinzwind rinzwind 688 Nov 7 11:18 test.gz

И да, вы можете добавьте такие строки в пакет, и попросите выполнить этот скрипт.

0
ответ дан 18 July 2018 в 03:44

ssh следует следующей структуре:

ssh {user}@{IP} {command}

Когда вы не добавили пользователя {user}, он принимает текущего пользователя, если вы не добавляете команду, которую он подключает к системе, и показывает вам приглашение. Если вы добавите команду, она выполнит ее. Пример, показывающий дату из удаленной системы:

ssh 1.1.1.1 date rinzwind@1.1.1.1's password: Tue Nov 7 11:17:40 CET 2017

Еще несколько примеров ...

ssh 1.1.1.1 'df -H' ssh 1.1.1.1 uname -mrs ssh 1.1.1.1 lsb_release -a ssh 1.1.1.1 gzip /tmp/test rinzwind@1.1.1.1's password: ssh 1.1.1.1 $ pwd /tmp $ ls -ltr test.gz -rw-rw-rw- 1 rinzwind rinzwind 688 Nov 7 11:18 test.gz

И да, вы можете добавьте такие строки в пакет, и попросите выполнить этот скрипт.

0
ответ дан 24 July 2018 в 17:55
  • 1
    доза это относится к sftp? как реализовать в WinSCP? без терминала – wpcoder 7 November 2017 в 15:12
  • 2
    Нет, и вы не можете. Только в командной строке. – Rinzwind 7 November 2017 в 15:53

Другие вопросы по тегам:

Похожие вопросы: