2012-07-10 31 views
1

我想创建一个bash的功能,将白名单上的远程VPS一个IP:是iptables在bash函数错误的参数`接受”

function whitelist-ip() { ssh vps-01 '/usr/bin/sudo /sbin/iptables -v -I INPUT 1 -s $1 -j ACCEPT'; } 

[[email protected]]: 〜$白名单,IP 192.0.43.10

错误的参数 '接受'

尝试的iptables -h '或 '--help iptables的' 以获取更多信息。'

它工作在CLI:

[[email protected]]:〜$ SSH VPS-01“的/ usr /斌/须藤/ sbin目录/ iptables的-v -I INPUT 1 -s 192.0.43.10 -j ACCEPT”

接受所有的选择 - 在*出* 192.0.43.10 - > 0.0.0.0/0

回答

3

您hardquoted的命令,所以$1不展开。改用软引号代替:

function whitelist-ip() { ssh vps-01 "/usr/bin/sudo /sbin/iptables -v -I INPUT 1 -s $1 -j ACCEPT"; } 
+2

我爱你和这个网站!非常感谢。 =) – jdorfman 2012-07-10 18:18:55