2 つのドライブをマップする Perl スクリプトがあり、ドライブの 1 つから別のドライブにファイルをコピーします。Perl スクリプトは Windows ボックスにありますが、スクリプトを実行するために Linux ボックスから Windows ボックスに SSH 接続しています。Windows ボックスからスクリプトを直接実行すると、すべて問題なく動作し、ドライブがマップされ、ファイルが正常にコピーされます。SSH 経由で Linux ボックスからスクリプトを実行しようとすると、スクリプトが失敗し、次の出力が表示されます。
ローカル デバイス名は既に使用されています。 ソース \\xxx.xxx.net\localdirectory のマッピング エラー
このエラーは、最初のドライブをマップしようとしたときに発生します。2 番目のドライブでも失敗するかどうかはわかりません。
これと同じ方法で(LinuxからWindowsボックスへのsshを介して)実行される他のいくつかのPerlスクリプトがあり、問題なく実行されますが、ドライブをマップするのはこれだけです。これは、スクリプトを実行するために使用しているコードです。
#!/bin/sh
ssh -t -t user@server "cd /Path/to/Perl/Script; /cygdrive/C/Perl/bin/perl.exe Script.pl"