Ubuntuについてあまり知らないようにしてください。これが私の最初の質問です。質問が無効に見える場合は、すみません。
一部を実行可能 SFTPを使用したSSHコマンドと言われました。
それが可能なら; SFTPをリモートで実行するためにサポートされているコマンドのリストは何ですか? (SSHコマンドまたはSSHエミュレーション); PUT、GETなどではありません。
私が達成しようとしているシナリオは次のとおりです。
または、少なくともそれが可能であれば。いくつかのbashスクリプトに折り目を付けてsFTPを実行するには
更新:別の関連する質問があります。 SFTPを使用してファイルを編集することはできますか?リモートファイルの1行を追加または編集しますか?
SFTPサーバーの戦闘能力が必要な線量?
完全なリストへのリンクまたはさらに読むためにリンクを共有できるかどうかアドバイスしてください!ありがとうございました
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の一般的なユースケースは、ユーザーを投獄し、コマンドを実行することなくファイルアクセスを提供することなので、このようなものが存在することは期待していません。
Zip圧縮する代わりに、-C
オプションとsftp
を併用することもできます。
-C Enables compression (via ssh's -C flag).
sshは次の構造に従います。
ssh {user}@{IP} {command}
{user}を指定しない場合、現在のユーザーが使用されます。コマンドを追加しない場合は、システムに接続してプロンプトが表示されます。コマンドを追加すると、コマンドが実行されます。リモートシステムからの日付を示す例:
ssh 1.1.1.1 date
[email protected]'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
[email protected]'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
そして、そのような行をバッチに追加して、そのスクリプトを実行させることができます。