2011-07-18 6 views
2

Windows 7デスクトップでplinkを使用して、Windows 2008サーバー上にフォルダを作成しています。 サーバはpragmaSSHを使用してSSH接続を許可し、すべてが正常に機能します。スペースを含むPlink cmd.exe mkdirが機能しない

私が作成したいディレクトリには空白があり、そこに問題が始まります。

私はこの

plink.exe -i privatekey.ppk [email protected] cmd.exe /c mkdir "c:\asdfasdf" 

のように動作しますが、これにはそのコマンドを変更すると失敗した基本的なplinkコマンドを持っています。スペースは確かに私の問題です。

plink.exe -i privatekey.ppk [email protected] cmd.exe /c mkdir "c:\asdf asdf" 

私はオフだと思うし、常にスペースと同じ問題を得ることができるすべての可能な方法でこれを脱出しようとしました。

60000年後に私はサーバーに引用符を渡す方法を考えました。

plink.exe -i privatekey.ppk useryserverます。mkdir \\ "" "C:\ ASF ASF \\" ""

、それはそれぞれの側に1社の見積もりを送り、コマンドを実行しました

+0

あなたが考えることができるすべての可能性の方法は何ですか? – Joey

答えて

2

引用符は、plinkのコマンドをエスケープするのに十分で、反対側でもう一度引用するほどスマートではありません(奇妙なシェルがそこで動作するかもしれないので妥当ではありません) 。

ですから、次のものが必要です。

plink.exe -i privatekey.ppk [email protected] cmd.exe /c mkdir "\"c:\asdf asdf\"" 
+0

も同様の問題を引き起こし、asdfフォルダだけを作成しようとします。サブディレクトリまたはファイルc:¥asdfはすでに存在します。 処理中にエラーが発生しました:c:\ asdf。 サブディレクトリまたはファイルasdfはすでに存在します。 処理中にエラーが発生しました:asdf。 – johnnydeluxable

+0

@ johnnydeluxable:引用符をエスケープするさまざまな方法が、異なる状況で適用される可能性があります。一つは@Joeyの答えと同じもので、他のものは ''^"c:\ asdf asdf ^" "、" "" c:\ asdf asdf "" "です。 –

+0

'mkdir'コマンド(引数も含む)全体を二重引用符で囲み、フォルダ名の前後に二重引用符をエスケープすることも可能です。 –

関連する問題