私は最近FTP接続を介してリモートシステムで広く作業してきましたが、セッションが短すぎるため、ローカルコンピュータで作業を完了したときに頻繁に再ログインする必要があるため、カスタムコマンド/シェルスクリプトFTPサーバーにログインするには1つの単語が必要ですが、問題はこれをどのように行うのでしょうか。
例えば
~$ ftp domainname.com
...
Name (domainname.com): MyName
...
Password: xxxx
...
ftp>
ベストアンサー1
通常、ftp
コマンドラインクライアントは~/.netrc
リモートシステムの資格情報を構成する構成ファイルをサポートします。たとえば、次のようになります。
machine legacy.system.example.org
login juser
password keins
これにより、ftp legacy.system.example.org
この情報を再入力する必要がなくなります。
より自動化が必要な場合は、ftp
パイプされたコマンドを使用してスクリプトを作成できます。たとえば、次のようになります。
$ cat pushit.sh
# complex logic to set
# EXAMPLE_FILE=
ftp <<EOF
prompt
mput $EXAMPLE_FILE
quit
EOF
もちろん、システムがそれをサポートしていない場合は、ssh
おそらくFTPもサポートしません。しかし、試してみることはできます(たとえば、次のように)。FTP-SSL)接続を保護する必要がある場合。
リモートFTP
一般的なコマンドの1つに代わるものは、次のものを使用することftp
です。lftp
、自動ログイン、コマンド実行など、さまざまな機能を提供するためです。
例:
$ lftp -e 'source ~/login.lftp'
$ cat login.lftp
open sftp://juser:[email protected]
cd /path/to/favorite/dir
この例ではSFTP標準サポートされていないサーバーOpenSSH SFTPクライアント。
このオプションは、-e
lftpに起動時にコマンドを実行し、対話型を維持するように指示します。
これらの lftp スクリプトは他のスクリプトを取得することも、サーバーから自動的に切断することもできます。
対照的に、with-c
または-f
lftp は、引数で指定されたコマンドを実行するか、指定されたファイルから読み取った直後に終了します。