【发布时间】:2011-08-12 18:13:32
【问题描述】:
#!/usr/local/bin/perl
use Tk;
# Main Window
$mw = new MainWindow;
$label = $mw -> Label(-text=>"Hello World") -> pack();
$button = $mw -> Button(-text => "Quit",
-command => sub { exit }) -> pack();
MainLoop;
在此代码中,当按下按钮 $button 时,它会关闭程序。因为它执行了退出命令。我想修改代码,以便当用户单击按钮时,它将刷新 iptables 规则 (iptables -F)。我该怎么做?
我试过了:
$button = $mw -> Button(-text => "Flush the rules",
-command => system ( iptables -F )) -> pack();
为什么这不起作用?我是否必须为它创建一个子程序(然后在那里编写iptables -F 命令)然后调用该子程序?不能像上面代码那样直接输入命令吗?
【问题讨论】: