0

有線の問題があります。2 つの文字列を連結しようとしました。@Client.ip でこれを行うと、新しい行を含む文字列が得られます。@Client.ip は文字列です。

私はこれを使用しました:

order= "net rpc shutdown #{ip} --user=administrator%***! --timeout=100 --force -C 'bla'"

またはこれ

order= "net rpc shutdown "+ @client.ip + " --user=administrator%*** --timeout=100 --force -C 'bla'"

結果は次のとおりです。

net rpc shutdown 178.213.111.69
  --user=administrator%*** --timeout=100 --force -C 'bla'

IPを手動で記述して連結すると、正常に機能し、すべてが1行になります....なぜそれが起こっているのですか? 誰かがアイデアを持っていますか?:-) system(-) コマンドを使用するには、この文字列を 1 行で入力する必要があります。

4

2 に答える 2

3

@client.ip最後に改行があるようです。剥がしてみる

order= "net rpc shutdown #{@client.ip.rstrip} --user=administrator%*** --timeout=100 --force -C 'bla'"

String#rstrip文字列の末尾にある空白を削除します。

于 2012-07-23T15:19:38.247 に答える
2

文字列クラスにchomp ヘルパーを使用してみることができます

order= "net rpc shutdown #{ip.chomp} --user=administrator%***! --timeout=100 --force -C 'bla'"
于 2012-07-23T15:26:25.030 に答える