4

bashでsshを使用して別のコンピューターにログインしているときに、ファイルをローカルハードドライブにダウンロードする最良の方法は何ですか. sftp は知っていますが、ディレクトリ名のタブ補完がないなど、便利ではありません。Ubuntu 8.04.1 を使用しています。パブリック IP を持っていないため、動的動的 DNS ソリューションをセットアップしたくありません。

4

6 に答える 6

6

私はUbuntu 8.04.1も実行しています。

$ scp me@myserver.mydomain.com:.bashr<TAB>

私は実際にタブ補完を取得します (つまり、bash はサーバーに sshing し、そこのファイルシステムから補完結果を取得します)。それで

$ scp me@myserver.mydomain.com:.bashrc .

.bashrc をサーバーからローカル マシンの現在のディレクトリにコピーします。

これが得られない場合は、 を試しsudo apt-get install bash-completionて、.bashrc に次の行が含まれていることを確認してください (私の場合はデフォルトで行われました)。

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi
于 2008-10-01T09:40:57.420 に答える
1

FISHはどうですか?***Shell を介した ***Fi***le 転送 - コンソールで Midnight Commander を使用できます。

$ sudo apt-get install mc
$ mc

次にF9を押します。右 (右パネル用) -> シェル リンク リモート ホストの ssh リンクを入力します。プロンプトで、マシン名を入力して次を指定します。

user@host

システムはパスワードの入力を求めます (または、SSH キーが設定されている場合は自動ログイン)。

これで、リモート ファイルシステムを参照し、必要に応じて選択してコピーできます (F5)。

于 2008-11-19T21:20:36.477 に答える
0

ssh-xferはあなたが探しているものです。セットアップが完了したら、(sshリモート マシンのセッション内から)次のように入力できます。

$ ssh-xfer foo.txt

foo.txt が魔法のようにローカル マシンに表示されます。

于 2008-10-09T01:29:36.350 に答える
0

知らない。

私は $ scp host:file locallocation

于 2008-10-01T09:12:24.493 に答える
0

私は実際にコマンド ライン SCP クライアントを使用するのが好きです。:)これがどのように行われるかはわかりませんが、UbuntuのSCP(openssh-client 1:4.7p1-8ubuntu1.2から)は、通常、公開鍵を介して認証するホスト上のリモートディレクトリとファイルのタブ補完を実際に行います。

于 2008-10-01T09:38:59.720 に答える
0

私の知る限り、リモート フォルダー構造でオートコンプリートできる単純な scp-on-steroids はありません。基本的にリモートフォルダーをマウントしたいだけなら、sshfsを見てください。または、Nautilus 内で ssh://... を使用してリモート ディレクトリをマウントしてみてください。

于 2008-10-01T09:21:44.067 に答える