scpを使用してLinuxからWindowsコンピュータにファイルを転送することはできません。

scpを使用してLinuxからWindowsコンピュータにファイルを転送することはできません。

シェルスクリプトを介してLinuxシステムからWindows共有にファイル/ディレクトリを転送する必要があるため、次のコマンドを試してください。

scp <directory-location-path-on-linux>/pom.xml "\\\\<ip-address-or-hostname>\\Shared\\test"

これにより、コンソールに出力が提供されず、ターゲットにコピーされたファイルを表示できなくなります。

scp <username>@<host-ip-of-linux(i.e. of source)>:<directory-location-path-on-linux>/pom.xml "\\\\<ip-address-or-hostname>\\Shared\\test"

これはパスワードを要求し、パスワードを入力した後、コンソールに次の出力を提供します。

pom.xml                                                       100% 4966     6.2MB/s   00:00

ただし、ファイルはターゲットにコピーされません。

ここで何が間違っているのかを理解するのに役立ちますか?

**注:**ターゲット共有の場所には、誰もが読み取り/書き込みアクセス権を持っています。

ベストアンサー1

ファイルコピーを使用するには、ターゲットscpシステムでSSHサーバーを実行する必要があります。正しい形式、もし実際にはSSHサーバーが稼働しており、次のようにする必要があります。

scp /path/on/linux/pom.xml ip-address-or-hostname:/remote/path

これを実行すると:

scp <directory-location-path-on-linux>/pom.xml "\\\\<ip-address-or-hostname>\\Shared\\test"

またはこれ:

scp <username>@<host-ip-of-linux(i.e. of source)>:<directory-location-path-on-linux>/pom.xml "\\\\<ip-address-or-hostname>\\Shared\\test"

\\<ip-address-or-hostname>\Shared\test実際、Linuxシステムの現在のディレクトリに名前が付けられたファイルを作成します。あなたはそれを見ることができるはずですls。たとえば、

$ scp file "\\\192.168.1.1\\foo"
$ ls
'\\192.168.1.1\foo'   file

あなたがこれを使用しているという事実に基づいて\\\、あなたが本当にしたいことは、SMBプロトコルを使用してWindowsホストが共有しているドライブにファイルをコピーすることであると仮定します。これを行う一般的な方法は、Linux上でSMB共有ドライブをマウントしてからですcp

これを行う方法を説明する数十のリソースがあります。以下は、「linux mount samba」を検索するときに見つけた人気のある検索キーワードの2つで、出発点として機能する必要があります。

おすすめ記事