簡體   English   中英

ssh2_exec命令中的PHP變量

[英]PHP variable in ssh2_exec command

我有一個問題,將帶有IP地址的變量放入ssh2命令。

$somestring = 'ebtables -t filter -A FIREWALL -p IPv4 --ip-src '.$newifaceaddr.' --ip-proto tcp --ip-dport 22 -j ACCEPT';
$somevar = ssh2_exec($connection, $somestring); 

命令有效,但不完全。 預期的結果是“ -p IPv4 --ip-src 192.168.1.247 --ip-proto tcp --ip-dport 22 -j ACCEPT ”,但我得到的是“ -p IPv4 --ip-src 192.168.1.247 -j CONTINUE

有趣的是,如果我把命令寫成沒有變量的字符串,就像這樣“ ebtables -t filter -A FIREWALL -p IPv4 --ip-src 192.168.1.247 --ip-proto tcp --ip-dport 22 -j ACCEPT ”它完美地運作。 當我打印一個變量和一個沒有輸出是相同的,所以我不知道這是什么問題。

我試過這個PHP SSH2 exec“$” ,它沒有幫助和許多其他的東西。 plx halp:<

問題是,當我通過ssh2_exec從SSH2獲取IP數據時,字符串的最后一個字符是一些空白字符,我必須使用$newifaceaddr = preg_replace('/\\s+/', '', $newifaceaddr);

之后一切都很有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM