[英]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.